【发布时间】:2014-03-25 14:40:08
【问题描述】:
我可以在常规视图中使用 Devise 辅助方法,但不知道如何在我的 Mailer 中使用它。我需要确定用户是否已登录以构建正确的电子邮件。
class UserMailer < ActionMailer::Base
def receipt
end
end
receipt.text.erb
<% if user_signed_in? %> #Error: undefined method `user_signed_in?' for #<#<Class:0x35695fc>
Secret link
<% end %>
【问题讨论】:
-
假设,用户在两台机器上收到这封电子邮件:一台他已登录,另一台未登录。你现在在干什么? (提示:正确的电子邮件不应该取决于用户的登录状态)
-
您有上次登录时间的时间戳吗?设计可以提供这个。然后使用 Active Record 获取该属性并确定它是否在最后 X 分钟内。
标签: ruby-on-rails ruby-on-rails-4 devise actionmailer