我正在交一个朋友btn。我没有生成友情控制器,而是选择在用户资源下添加操作以将数据传递到友情表中。奇怪的是,在我设置了路由并在用户控制器中添加了“ show_friend”方法之后,视图中的链接无法指导我在user.show页面上显示部分模板。它注意到了这个错误:
ActionController::UnknownFormat in UsersController#show_friend
我已经用其他动作(show_reply / show_draft / show_collect)以相同的方式进行了此操作,所以我不太明白为什么它不起作用。
这是我在这里发布的第一个问题。如果我没有正确说明,请告诉我。 (my github if needed...)
routes.rb
data
user_controller.rb
resources :users do
member do
get :show_reply
get :show_draft
get :show_collect
get :show_friend
post :invite_friend
post :accept_friend
post :ignore_friend
end
end
views / users / show.html.erb
def show_friend
@user = User.find(params[:id])
end
views / users / _friends.html.erb
<li class="nav-item">
<%= link_to "My Friends", show_friend_user_path(@user), class: "nav-link #{'active' if action?('show_friend')}" %>
</li>
#...left out...
<div class="row">
<div class="col">
<% if action?('show_draft') %>
<%= render partial: 'drafts' %>
<% elsif action?('show_reply') %>
<%= render partial: 'replies' %>
<% elsif action?('show_collect') %>
<%= render partial: 'collection' %>
<% elsif action?('show_friend') %>
<%= render partial: 'friends' %>
<% else %>
<%= render partial: 'posts' %>
<% end %>
</div>
</div>