2013-03-06 82 views
1

我剛開始從一個PHP背景Rails和我下面這個教程:http://ruby.railstutorial.org/chapters/sign-in-sign-out#top餅乾單獨的表?

在部分8.2.1 - 你必須添加remember_token表用戶和令牌的值被放置在這個領域。

我的問題是,如果用戶在不同的計算機上登錄會怎麼樣。由於它更新了remember_token字段,因此用戶登錄時以前的計算機的cookie登錄無效。是不是有意義創建一個新的表與餅乾: id,remember_token,created,user_agent_ip_address或是複雜的事情?

回答

2

假設存儲在用戶表中的remember_token是主密鑰。
瀏覽器就像門。
使用主鑰匙,您可以根據需要打開和關閉門。假設您打開門A,B和C.您可以選擇在門B和C保持打開的同時關閉門A.這就是remember_token在那裏工作的方式。
您在不同的瀏覽器上登錄,然後選擇退出某些瀏覽器並保持其他登錄狀態。這並不意味着當你在瀏覽器上註銷時,它會自動將其餘部分標出。
如果您想讓用戶查看他們的會話目前在哪裏(哪些計算機)處於活動狀態(登錄狀態)並且還允許他們退出這些計算機,那麼您可能需要單獨的Cookie表格。