私はdeviseとactionmailerを使用しています。ユーザーがアプリで自分のアカウントを確認した後、アクションメーラー メソッドをトリガーする方法を考えています。このアクションメーラー メソッドはウェルカム メッセージにすぎません。
また、名前や電子メールなど、同じユーザー情報を取得するにはどうすればよいですか? やってみresource
ました。しかし、うまくいきませんでした。
私はdeviseとactionmailerを使用しています。ユーザーがアプリで自分のアカウントを確認した後、アクションメーラー メソッドをトリガーする方法を考えています。このアクションメーラー メソッドはウェルカム メッセージにすぎません。
また、名前や電子メールなど、同じユーザー情報を取得するにはどうすればよいですか? やってみresource
ました。しかし、うまくいきませんでした。
これは実際には比較的簡単な作業です。User クラスのObserverを作成するだけです。
class UserObserver < ActiveRecord::Observer
def after_save(user)
if user.confirmed_at_changed?
#send email
end
end
end
after_save を使用すると、アプリケーションが実行され、ユーザーが今確認されたかどうかの状態がチェックされます。それは不必要な遅延につながります。
次のコードを使用して、devise が提供するデフォルトの確認機能をオーバーライドすることをお勧めします。
class User < ActiveRecord::Base
devise :invitable, :database_authenticatable, :registerable, :recoverable,
:rememberable, :confirmable, :validatable, :encryptable
# Override devise confirm! message
def confirm!
welcome_email
super
end
# ...
private
def welcome_email
UserMailer.welcome_message(self).deliver
end
end
http://csnipp.com/s/507/-Send-welcome-mail-after-confirmation-devise