我有 3 个模型:帖子、评论和问题。评论属于帖子,问题属于评论。我正在尝试从我的帖子显示页面链接到我的问题显示页面。帖子显示页面正在调用链接所在的部分 _comments。问题是链接转到问题索引而不是问题显示,因为 question.id 为 nil。URL 如下所示:
/comments/19/questions/
路线:
comment_question GET /comments/:comment_id/questions/:id(.:format) questions#show
comment_questions GET /comments/:comment_id/questions(.:format) questions#index
_comments 部分中的链接:
<%= div_for(comment) do %>
<% comment.questions.select(:title).order('created_at desc').limit(3).each do |question| %>
<%= link_to question.title, comment_question_path(comment, question) %>
<% end %>
<% end %>
部分在帖子显示页面中调用:
<%= render :partial => @post.comments %>
我将链接更改为:
<%= url_for :controller => 'questions', :action => 'show', :comment_id => comment.id, :id => question.id %>
但收到此错误:
No route matches {:action=>"show", :controller=>"questions", :id=>nil, :comment_id=>20}
谢谢您的帮助!