[英]how to retrieve user name from cookie session data(RAILS)
我正在研究ROR,我在用戶儀表板區域中呈現了一些局部的側邊欄,並且像這樣在儀表板中返回了用戶名。 最初,儀表板布局僅包含在用戶控制器中。 但是現在我需要在新控制器上使用它
<h1>Welcome Back, <%= @user.name %> </h1>
所以我將其更改為
<h1>Welcome Back, <%= current_user %> </h1>
但是現在的問題是,current_user返回了用戶名,而不是返回用戶名
#<User:0x007fa8ee293940>
我假設是記住的令牌哈希。 現在,由於current_user已經具有會話cookie,所以我不確定如何遍歷數據庫以獲取用戶名。 有人可以幫助我調整current_user,以便它將獲取當前會話用戶但返回用戶名嗎?
謝謝!
這是我的會話助手
def sign_in(user)
remember_token = User.new_remember_token
cookies.permanent[:remember_token] = remember_token
user.update_attribute(:remember_token, User.digest(remember_token))
self.current_user = user
end
def current_user= (user)
@current_user = user
end
def current_user
remember_token = User.digest(cookies[:remember_token])
@current_user || User.find_by(remember_token: remember_token)
end
<User:0x007fa8ee293940>
是User對象的字符串表示形式。 您需要該對象的name屬性,類似於之前的操作(@ user.name)。 應該使用current_user.name代替current_user。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.