簡體   English   中英

如何從Cookie會話數據中檢索用戶名(RAILS)

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM