Ruby on rails 如何为两个不同的设计模型使用两套不同的邮件模板?

Ruby on rails 如何为两个不同的设计模型使用两套不同的邮件模板?,ruby-on-rails,devise,actionmailer,resque,Ruby On Rails,Devise,Actionmailer,Resque,我用Resque发送电子邮件。为此,我设定: 设计 config.mailer = "Mailers::Devise::DeviseMailer" config.scoped_views = true 但我有两个设计模型——用户和客户端。我想发送不同的设计邮件模板为每一个 devise.rb说“前四个配置值也可以在您的模型中直接设置。”,config.mailer是前四个配置值之一,但我不知道如何在模型中直接设置 我如何才能做到这一点?诀窍是设置: 设计 config.mailer = "M

我用Resque发送电子邮件。为此,我设定:

设计

config.mailer = "Mailers::Devise::DeviseMailer"
config.scoped_views = true
但我有两个设计模型——用户和客户端。我想发送不同的设计邮件模板为每一个

devise.rb说“前四个配置值也可以在您的模型中直接设置。”,config.mailer是前四个配置值之一,但我不知道如何在模型中直接设置

我如何才能做到这一点?

诀窍是设置:

设计

config.mailer = "Mailers::Devise::DeviseMailer"
config.scoped_views = true
有关更多信息,请参阅Desive文档中的“配置视图”

如果应用程序中有多个角色(例如“用户”和 “Admin”),您会注意到Desive对所有对象使用相同的视图 角色。幸运的是,Deave提供了一种定制视图的简单方法。全部的 您需要做的是在内部设置“config.scoped_views=true” “config/initializers/designe.rb”

完成此操作后,您将能够拥有基于角色的视图,如 “用户/会话/新建”和“管理员/会话/新建”。如果找不到视图 在该范围内,Desive将在以下位置使用默认视图: “设计/会议/新”。您还可以使用生成器生成 范围视图:


我创建了一个示例应用程序,可以实现以下功能:

请注意app/models/admin.rb上的类似行,您可以在该行中为每个设计型号选择邮件发送程序。你还必须阅读设计邮件(https://github.com/plataformatec/devise/blob/master/app/mailers/devise/mailer.rb)实现相同方法的源代码。最后,写下你对邮件的看法