0
我的問題假定具體的答案,但它可能不是但準確。我應該在哪裏設置current_user,以便我不會丟失關鍵錯誤?
我創建了一個路線:
get 'users/:id/groups/' => 'users#groups', as: "my_groups"
,但是當我去訪問此路徑,有條件,在視圖中,我得到一個異常:
ActionController::UrlGenerationError at/
No route matches {:controller=>"users", :action=>"groups"} missing required keys: [:id]
下面是部分與違規行:
<% if user_signed_in? %>
<li id="groups-menu" class="dropdown">
<a href="#" class="dropdown-toggle" data-toggle="dropdown">
Groups <b class="caret"></b>
</a>
<ul class="dropdown-menu">
#offending line:
<li><%= link_to 'My Groups', my_groups_path %></li>
<li><%= link_to 'Create a Group', new_group_path %></li>
</ul>
</li>
<li><%= link_to 'Logout', destroy_user_session_path, :method=>'delete' %></li>
<% else %>
<li><%= link_to 'Login', new_user_session_path %></li>
<% end %>
<% if user_signed_in? %>
<li><%= link_to 'Edit account', edit_user_registration_path %></li>
<% end %>
<% if user_signed_in? %>
<% if current_user.has_role? :admin %>
<li><%= link_to 'Admin', users_path %></li>
<% end %>
<% end %>
似乎沒有current_user設置,也許?
目前還不清楚如果user_signed_in?
方法正常工作,這會如何破壞。