我一直收到以下错误。我正在努力开发自己的博客平台,以此来让我学习并变得更好。
错误:
显示/home/ubuntu/workspace/app/views/posts/show.html.erb在哪里 第36行提出:
未定义的方法`post_comments_path'for <#:0x007f88f0044248>你的意思是? posts_path
应用/视图/帖/ show.html.erb
<h2>Add a comment:</h2>
<%= form_for([@post, @post.comments.build]) do |f| %>
<div class="field">
<%= f.label :author %><br />
<%= f.text_field :author %>
配置/ routes.rb中
Rails.application.routes.draw do
get 'welcome/index'
resources :posts
# For details on the DSL available within this file, see http://guides.rubyonrails.org/routing.html
root :to => "posts#index"
end
答案 0 :(得分:0)
您可能需要将其更新为
resources :posts do
resources :comments
end
执行此操作后,您应该可以在控制台中使用rake routes
或rails routes
查看新路线。
答案 1 :(得分:0)
您没有comments
资源嵌套在posts
资源中(或根本没有),因此您无法使用帖子中的评论创建网址。
您需要先定义评论路线,然后才能为其生成网址。
如果您想将它们嵌套在posts
中,则应修改当前的resources :posts
行:
resources :posts do
resources :comments
end
路由文件中的 resources
生成帮助方法,Rails使用这些方法为模型生成URL,在本例中为post_comments_path
。
答案 2 :(得分:0)
您必须编辑对routes.rb文件的以下更改,然后重试
resources :posts do
resources :comments
end
答案 3 :(得分:0)
您的路线文件不正确。将以下代码放在routes.rb
中onCaptureCompleted()