所以当我尝试访问时http://127.0.0.1:3000/users/1/posts/17
出现错误
undefined method `post_comments_path' for #<#<Class:0x007fece23212a8>:0x007fece2a7c110>
Extracted source (around line #1):
1: <%= form_for([@post, @comment]) do |f| %>
2:
3: <%= f.label :name %>
4:
这是引用我的文件 -/app/views/posts/_form_comment.html.erb where line #1 raised:
我的/app/views/posts/_form_comment.html.erb
文件如下 -
<%= form_for([@post, @comment]) do |f| %>
<%= f.label :name %>
<br />
<%= f.text_field :name%>
<br />
<%= f.label :comment %>
<br />
<%= f.text_area :comment%>
<br />
<%= f.submit "Create comment" %>
<% end %>
这是我的 PostController 中的 show 方法
def show
@post = Post.find(params[:id])
@comment = @post.comments.build
@cl = Comment.where(:post_id => @comment[:post_id])
end
现在请注意,如果清空文件的内容/app/views/posts/_form_comment.html.erb
,页面加载就好了。显示帖子标题和内容。除了评论区。所以,我猜评论部分有问题。但我不知道是什么。
重要提示:这以前没有发生过。在我将用户模型与帖子模型相关联之前,它工作正常。 非常感谢。
更新:我的路线看起来像 -
resources :users, only: [:show] do
resources :posts do
end
resources :comments, only: [:create]
end