strange的定义:我的应用程序的会话模型似乎工作良好。cookie (user。memor_token = securerdom .urlsafe_base64)被存储,则登录将持续。生活是美好的。
然而,当用户编辑他们的个人资料并单击提交时,他们将注销。
这个问题让我认为Rails因为XSRF而结束会话。
但是为什么呢?
我不把所有的代码都贴在这里了,一个链接就可以了:https://github.com/chiperific/arcwmi_reports
帮助!
您的问题在User
模型:
before_save :create_remember_token
def create_remember_token
self.remember_token = SecureRandom.urlsafe_base64
end
这将在保存用户时修改memorer_token——也就是说,在创建用户或更新用户时。当用户更新他/她的配置文件时,memor_token将被更改。这会导致登录系统注意到cookie不再与用户匹配,并将用户注销。
修复用before_create
代替before_save