我和Devise有一个奇怪的问题。我列出了他们的任务。当你突然删除一个任务时,我得到一个与用户有关的模板错误。
似乎删除方法会导致会话注销,因此在尝试加载模板时无法找到用户。
我不知道为什么会这样:
_task.html
<div class="tasks">
<%= div_for task do %>
<%= link_to 'Delete', task_path(task), :method => :delete, :class => "delete", :remote => true %> | <%= content_tag(:div, task.task, :class => "task-body") %>
<% end %>
</div>
destroy.js.erb
$("#task_<%= @task.id %>").fadeOut();
重新加载页面后出现错误,这是账号,登记等方面的标题
No route matches {:action=>"show", :controller=>"users"}
Extracted source (around line #5):
2: <div id ="login">
3: <ul>
4: <li><%= link_to "Sign out", destroy_user_session_path %></li>
5: <li><%= link_to "Account", user_path(current_user) %></li>
6: <li><%= link_to "Things", user_things_path(current_user) %></li>
7:
8: </ul>
提前致谢!
答案 0 :(得分:1)
经过一番搜索后,我在stackoverflow上找到了答案,所以应该从this previous question
获得信用。请求不包括所需的CSRF数据,以及 Rails 3.0.4会话静默重置而不是抛出 ActionController :: InvalidAuthenticityToken错误。 要解决此问题,请在布局中包含以下内容:
<%= javascript_include_tag :defaults %>
<%= csrf_meta_tag %>