如何使用设计获取控制器中的当前用户ID?
在我的控制器中,我有类似的东西:
def index
me = current_user
c = User.find(me)
@sheets = c.time_sheets
end
我收到一条错误消息,说“找不到没有ID的用户”。
如果我在User.find()中输入一个静态数字,它可以工作但当然这不是我想要的。任何帮助将不胜感激。
谢谢!
答案 0 :(得分:14)
将当前索引操作替换为
def index
if current_user
@sheets = current_user.time_sheets
else
redirect_to new_user_session_path, notice: 'You are not logged in.'
end
end
如果用户未登录,即current_user = nil,那么用户将被重定向到带有flash消息的登录页面。