尝试通过 before_action 过滤器将文件附加到邮件:
class UserMailer < ActionMailer::Base
before_action :add_logo_attachment
layout 'mail'
default from: "\"Admin\" <admin@site.com>",
to: Proc.new {Admin.pluck(:email)}
def send_mail
mail(subject: 'Hello, admin!')
end
.
.
private
def add_logo_attachment
attachments.inline['logo.png'] = File.read(Rails.root.join('app/assets/images/logo.png'))
end
end
我得到这个错误:未定义的方法 `before_action' for UserMailer:Class Rails 指南中有相同的示例,我不明白我的代码和指南中的代码有什么区别。