0
我正在通過Railstutorial.org上的教程,並完成了第8章的通過測試。我的問題是,如果我完全按照指南的代碼,我可以登錄,但無法到註銷。無法完全註銷 - RailsTutorial.org - 第8章
如果我點擊「註銷」,我被重定向到root_path,但仍然是一個登錄成員。
我想我跟蹤到我的會話助手的行爲。具體如下行:
def current_user
@current_user ||= User.find_by_remember_token(cookies[:remember_token])
end
通過Rails控制檯和撬我能夠確定的cookies [:remember_token]爲零,但因爲我的用戶remember_token也是零,則find_by_remember_token是在說,「嘿零= =無!太好了!我們找到了我們的用戶!「除了這顯然是不希望的行爲。
我已經改變CURRENT_USER方法如下固定它:
def current_user
@current_user ||= cookies[:remember_token] && User.find_by_remember_token(cookies[:remember_token])
end
我完全接受和理解,這很可能在我的代碼中的錯誤。我從項目中的這一點發現了Michael Hartl的承諾,並比較了我們的文件並找不到差異。關於可能發生在這裏的任何想法?
謝謝你的時間。