我有两个邮件:
class Mailer1 < ActionMailer::Base
def mail
if check_something?
end
end
private
def check_something?
end
end
class Mailer2 < ActionMailer::Base
def another_mail
if check_something?
end
end
private
def check_something?
end
end
(我知道我可以为实际的邮件模板提供视图帮助程序,但是如何使它适用于控制器类型的“帮助程序”方法 - 因为ActionMailers最近派生自Abstract Controller。)
那么,我在哪里可以声明check_something ?,我怎样才能让我的两个邮件程序都可以访问它?
答案 0 :(得分:1)
只需创建一个基类,就像默认使用ApplicationController获取http控制器一样:
class AppMailer < ActionMailer::Base
protected
def check_something?
end
end
class Mailer1 < AppMailer
def mail
if check_something?
end
end
end
class Mailer2 < AppMailer
def another_mail
if check_something?
end
end
end