参见英文答案 >
Rails mailer views in separated directory5个
是否可以自定义Rails 3.1 ActionMailers的模板路径?默认情况下,Rails查找:
是否可以自定义Rails 3.1 ActionMailers的模板路径?默认情况下,Rails查找:
/app/views/[mailer_class]
用于邮件程序视图模板.但是,我更愿意组织它们:
/app/mailers/views/[mailer_class]
或至少:
/app/views/mailers/[mailer_class]
我知道这可以通过ActionMailer的template_path配置参数在2.3中实现,但是从Rails 3开始这似乎已被弃用了.这种自定义不再可能吗?
解决方法
这种定制仍然是可能的.根据邮件的编写方式,有几种不同的方法可以执行此操作.
如果您有格式块(例如format.html),则可以将渲染’/ path /传递给/ template’.
或者,如果您只是调用mail(),则有两个选项可用于设置路径和模板名称,您只需要传递路径选项即可:
mail(:template_path => 'mailers/[mailer_class]',:template_name => '[mailer_method]')
您应该查看Rails指南以获取更多详细信息.
http://guides.rubyonrails.org/action_mailer_basics.html#mailer-views