【发布时间】:2011-01-05 00:25:15
【问题描述】:
在设计邀请中,您可以通过执行以下操作来邀请新用户:
User.invite!(:email => "new_user@example.com", :name => "John Doe")
我想做的是(有时)阻止设计邀请发送电子邮件。我在库中找到了以下代码:
def invite!
if new_record? || invited?
self.skip_confirmation! if self.new_record? && self.respond_to?(:skip_confirmation!)
generate_invitation_token if self.invitation_token.nil?
self.invitation_sent_at = Time.now.utc
save(:validate => false)
::Devise.mailer.invitation_instructions(self).deliver
end
end
关于如何最好地更新它以不在最后一行发送电子邮件的任何想法?我不熟悉 ::
谢谢
【问题讨论】:
-
你可以注释掉最后一行:
# ::Devise.mailer.invitation_instructions(self).deliver -
@The,我希望在某些情况下发送电子邮件,但不是在所有情况下发送。只是想知道是否有我可以传递的参数。
-
我能够通过将其添加到我的用户模型来覆盖自定义方法。问题是现在我收到错误“NoMethodError (undefined method
invitation_instructions' for Devise::Mailer:Class): app/models/user.rb:139:ininvite!'”有什么想法可以将它添加到我的用户模型中而不出现错误吗?
标签: ruby-on-rails ruby-on-rails-3 devise