Ben*_*Ben 4 ruby-on-rails ruby-on-rails-3 mandrill
我使用mandrill-api(来自MailChimp)在单个API调用中向许多人发送电子邮件.它需要一个HTML参数,我希望从一个视图而不是直接在我的模型中生成,我无法访问simple_format以应用于我保存在数据库中的纯文本(self.body).
示例代码:
class Request < ActiveRecord::Base
after_create :attempt_send
def attempt_send
require 'mandrill'
m = Mandrill::API.new
message = {
:subject=> "Subject",
:html => "#{self.body}"
}
sending = m.messages.send(message)
puts sending
end
end
Run Code Online (Sandbox Code Playgroud)
这种情况让我头疼.我的应用程序的其余部分使用Rails动作邮件程序,因此在视图层中可以干净地处理电子邮件内容.
如果你能告诉我如何以某种方式使用simple_format这将是一个快速修复,以实现我在self.body上需要的格式.我愿意接受更优雅的解决方案,使这个功能更像Rails邮件程序.我考虑过的一个选项是使用控制器方法返回电子邮件html但我认为这会导致自引用http请求,这不是一种有效的方法.开放的想法!
hou*_*se9 14
您可以包含模块ActionView :: Helpers :: TextHelper
http://api.rubyonrails.org/classes/ActionView/Helpers/TextHelper.html#method-i-simple_format
class Request < ActiveRecord::Base
include ActionView::Helpers::TextHelper
after_create :attempt_send
# ...
:html => "#{simple_format(self.body})"
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
7702 次 |
| 最近记录: |