我们想向我们网站上的注册用户发送电子邮件。
到目前为止,我们也以编程方式创建电子邮件并发送它们。
我们希望网站管理员可以使用 Rails 应用程序上的富文本编辑器创建 HTML 电子邮件,从数据库中选择用户并将其发送出去。
从本质上讲,它的行为有点像网络邮件程序,比如 gmail。但是:邮件将作为模板组成,并且可以使用一些 ERB,因此它们可以重新用于电子邮件用户等。
示例应用程序可以是发送给所有用户或只发送给部分用户的时事通讯或广播搜索。
有没有这样做的宝石?
如果没有,您将如何设置?
我们想向我们网站上的注册用户发送电子邮件。
到目前为止,我们也以编程方式创建电子邮件并发送它们。
我们希望网站管理员可以使用 Rails 应用程序上的富文本编辑器创建 HTML 电子邮件,从数据库中选择用户并将其发送出去。
从本质上讲,它的行为有点像网络邮件程序,比如 gmail。但是:邮件将作为模板组成,并且可以使用一些 ERB,因此它们可以重新用于电子邮件用户等。
示例应用程序可以是发送给所有用户或只发送给部分用户的时事通讯或广播搜索。
有没有这样做的宝石?
如果没有,您将如何设置?
我不知道有专门做这件事的 gem,但您可以查看默认包含在 Rails 中的action mailer 。
它非常适合发送模板电子邮件(帐户确认等)。您创建一个视图,它将该视图的内容(使用 ERB)呈现到电子邮件的正文中。
您也许可以使用它进行更多自定义,但我没有过多地使用它。
如果您通过 UNIXmail命令以编程方式发送邮件,另一种选择是将内容类型指定为 HTML。我使用的命令是:
mail -a 'Content-type: text/html' -s 'Subject' to_address@example.com < file_containing_message.html
啊,对不起——我不明白这个问题。我认为您的案例没有什么宝石,因为它是一个非常具体的用例。
我建议在电子邮件模板的数据库中存储一个 ERB 文本块。然后你可以使用这样的东西来呈现电子邮件:
require 'erb'
name = user.name
email_html = ERB.new(email.template).result(binding)
有关详细信息,请参阅ERB 文档。