【发布时间】:2018-12-17 13:53:54
【问题描述】:
根据devise 文档,我使用自己的邮件程序,而不是为我设计电子邮件。
这是我的做法:
class User < ActiveRecord::Base
attr_reader :raw_invitation_token
end
class InvitationsController < Devise::InvitationsController
def create
@from = params[:from]
@subject = params[:invite_subject]
@content = params[:invite_content]
@user = User.invite!(params[:user], current_user) do |u|
u.skip_invitation = true
end
email = NotificationMailer.invite_message(@user, @from, @subject, @content)
end
end
class NotificationMailer < ActionMailer::Base
def invite_message(user, venue, from, subject, content)
@user = user
@token = user.raw_invitation_token
invitation_link = accept_user_invitation_url(:invitation_token => @token)
mail(:from => from, :bcc => from, :to => @user.email, :subject => subject) do |format|
content = content.gsub '{{first_name}}', user.first_name
content = content.gsub '{{last_name}}', user.first_name
content = content.gsub '{{full_name}}', user.full_name
content = content.gsub('{{invitation_link}}', invitation_link)
format.text do
render :text => content
end
end
end
end
但是当我收到from 是demo@gmail.com 并且在development.rb 中定义用于邮件配置的电子邮件时。但是我想email 的from 应该是current user 意味着当我邀请某人时
收到了。
请帮帮我。
【问题讨论】:
标签: ruby-on-rails ruby devise rubygems devise-invitable