2013-03-06 44 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表格。