Ruby on rails 3 设计不可修改电子邮件中的自定义邮件

Ruby on rails 3 设计不可修改电子邮件中的自定义邮件,ruby-on-rails-3,devise,Ruby On Rails 3,Devise,如何将自定义邮件传递给Desive invitable电子邮件?我希望邀请者向被邀请者发送一条消息,比如“Hey check out this site” 我尝试将其包含在属性中,并在块中设置一个实例变量,这两种方法似乎都无法从电子邮件中访问 user = User.invite!(:email => share.to_user_email, :message => "hey check this out") do @message = "hey it's me!"

如何将自定义邮件传递给Desive invitable电子邮件?我希望邀请者向被邀请者发送一条消息,比如“Hey check out this site”

我尝试将其包含在属性中,并在块中设置一个实例变量,这两种方法似乎都无法从电子邮件中访问

  user = User.invite!(:email => share.to_user_email, :message => "hey check this out") do 
    @message = "hey it's me!"
  end

您必须执行
rails生成设计不可侵犯:视图用户


然后,您将获得新的erb文件
app/views/users/mailer/invitation_instructions.html.erb
,您可以以任何方式自定义该文件邮件内容位于app/views/designe/mailer/invitation_instructions.html.erb。默认情况下,它是:

<p>Hello <%= @resource.email %>!</p>

<p>Someone has invited you to <%= root_url %>, you can accept it through the link below.</p>

<p><%= link_to 'Accept invitation', accept_invitation_url(@resource, :invitation_token => @resource.invitation_token) %></p>

<p>If you don't want to accept the invitation, please ignore this email.<br />
Your account won't be created until you access the link above and set your password.</p>
你好

有人邀请你参加,你可以通过下面的链接接受

@resource.invitation\u token)%>

如果您不想接受邀请,请忽略此电子邮件。
只有访问上面的链接并设置密码,才能创建您的帐户


修改此文件以进行自定义。

电子邮件模板将允许您为所有电子邮件发送相同的消息

这里是另一种方式/情况,当您将消息作为用户的输入时

model/user.rb

attr_accessor :message
控制器

  User.invite!({email: email}, current_user) do |user|
    user.message = params[:message]
  end
/查看/设计/邮寄/邀请说明.html.erb

<p>Hello <%= @resource.email %>!</p>

<p><%= @resource.message%>.</p>
你好


哎呀,千万不要相信拼写检查……如果答案正确,你介意接受吗?thanx in Advanced别忘了在设计配置中检查config.scoped_views=true。如果没有它,新的视图将无法应用。在当前的设计版本中,它应该是app/views/devise/mailer/invitation\u instructions.html.erb如果我从用户处获取输入消息,该怎么办?我怎样才能把它放在视野中呢?你应该问一个新的问题。。只要指给我看,我会尽力帮你的。。很难在评论中共享代码我面临着同样的问题,任何人都能回答我的问题吗:因此,当我使用
bin/rails g designe\u invitable:views user
生成视图时,它在
app/views/users/mailer
内部创建,而不是
app/views/devise/mailer
views/users/mailer
对我不起作用。