我想添加一些自定义字段来设计身份验证,因此我按照教程进行了一些更改。我解压缩了设计宝石,将视野添加到视图中,然后设计控制器。我添加了字段" first_name"和" last_name"到我的用户表。这些变化并没有奏效。所以我不想花太多时间在那上面,所以我想继续前进,我删除了我添加到设计gem源代码中的所有代码,创建了一个迁移以删除first_name和last_name来自用户。一切都很好,我可以在网站上移动一切。但是一旦我尝试退出,我就会收到此错误: 在命令行中,错误还表示"无法验证CSRF令牌的真实性"
这是我在布局视图导航栏中为用户注销的代码:
<% if user_signed_in? %>
<li><%= link_to "Sign out", destroy_user_session_path, method: :delete %></li>
<%else%>
<li>
<%= link_to "sign up" , new_user_registration_path %>
</li>
<li>
<%= link_to "Log in", new_user_session_path%>
</li>
<%end%>
我重新启动了服务器以及所有这些。用户仍然登录。我无法注销任何内容。有办法解决这个问题吗?
答案 0 :(得分:-1)
要在设计中销毁用户会话,您必须执行以下操作:
<%= link_to "Logout", destroy_user_session_path, :method => :delete %>
hash':method'将触发删除操作并将用户签名并销毁当前会话。确保指向“destroy_user_session_path”或指定的路径。您应该能够通过使用“rails routes”或“rake routes”命令来查看路径的名称,具体取决于您使用的rails版本。
希望这有帮助。