【发布时间】:2012-04-06 08:57:25
【问题描述】:
我认为诸如 name 和 email 之类的方法在 rails 中是默认的?
在我的静态页面视图中,在 profile.html.erb 我有:
<% if logged_in? %>
<% provide(:title, @user.name) %>
<% else %>
<% provide(:title, 'Profile')%>
<% end %>
我放入了我的 static_page_controller
def profile
@user = User.find_by_remember_token(:remember_token)
end
当我进入控制台时, User.find_by_remember_token("actualtoken").name 会返回适当的用户名,但 :remember_token 不会。如何使 :remember_token = 登录用户记住令牌?
在我的 session_helper 我有
def log_in(user)
cookies.permanent[:remember_token] = user.remember_token
current_user = user
end
def logged_in?
!current_user.nil?
end
def current_user=(user)
@current_user = user
end
def current_user
@current_user ||= user_from_remember_token
end
def log_out
current_user = nil
cookies.delete(:remember_token)
end
private
def user_from_remember_token
remember_token = cookies[:remember_token]
User.find_by_remember_token(remember_token) unless remember_token.nil?
end
end
将它复制到我的 static_pages_helper 并没有完成任何事情。
【问题讨论】:
标签: ruby-on-rails methods undefined null