application.html.erb中缺少什么?RailsCast 209 -设计修改



我正在浏览RailsCast 209- design -revised。在application.html.erb中给出了这个代码(改变了路径)

<div id="container">
    <div id="user_nav">
    <% if user_signed_in? %>
        Logged in as <strong><%=current_user.email %></strong>
        <%= link_to 'Edit_profile',edit_blog_post_path%>
        <%= link_to 'LogOut', destroy_user_session_path%>
        <%else %>
        <%= link_to 'Sign Up', new_user_path %>
        <%= link_to 'Login', new_user_session_path %>
    <% end%>
    </div>
</div>

问题是,在RailsCast这个文件工作得很好,但对我来说

抛出No route matches {:action=>"edit", :controller=>"blog_posts"} missing required keys: [:id]错误。

1)如果不给id,它如何在铁路广播中工作?

2)在application.html.erb中我如何给出id?

虽然你已经接受了答案,但我认为正确的答案应该是:

<%= link_to 'Edit_profile', edit_user_path(current_user) %>

因为我假定您想编辑的是用户,而不是id与用户id意外相同的博客文章

试试这个

<%= link_to 'Edit_profile',edit_blog_post_path(current_user.id)%>

相关内容

  • 没有找到相关文章

最新更新