这是在 Rails 3.1 中为 Mailer 和视图提供帮助程序的最佳方式吗?
class EventMailer < ActionMailer::Base
include MailerHelper
helper :mailer
我试过
helper :mailer
就其本身而言,但这不允许我使用 EventMailer 类中的帮助程序。
我试过
add_template_helper(MailerHelper)
但有同样的问题。
这是在 Rails 3.1 中为 Mailer 和视图提供帮助程序的最佳方式吗?
class EventMailer < ActionMailer::Base
include MailerHelper
helper :mailer
我试过
helper :mailer
就其本身而言,但这不允许我使用 EventMailer 类中的帮助程序。
我试过
add_template_helper(MailerHelper)
但有同样的问题。
rails 助手应该是视图助手。
您会注意到以下代码:
class MyController < ApplicationController
helper :my
end
将使MyHelper
视图中的方法可用,但不能用于您的控制器操作。include MyHelper
将使辅助方法在控制器中可用。
总结:
helper :my
你可以在你的视图中使用助手
include MyHelper
你可以在你的控制器中使用助手
我解释了更多,但你已经回答了你的问题:
class EventMailer < ActionMailer::Base
include MailerHelper
helper :mailer
# rest of the code goes here ...
end
会做你想做的事,并允许你在你的邮件和你的视图中使用你的助手。
希望这可以帮助。