我试图允许对嵌套资源发表评论,当我选择创建评论按钮时,我在 app/controllers/comments_controller.rb:7:in 'create' 中得到了一个未定义的方法“comment”。由于我还是 ruby 和 rails 的新手,因此我按照入门指南中的代码进行操作,但似乎无法弄清楚错误的原因。
协会是:
has_many :comments
belongs_to :restaurant
在我的路线中
resources :restaurants do
resources :comments
end
在评论控制器中
def create
@restaurant = Restaurant.find(params[:restaurant_id])
@comment = @restaurant.comments.create(params[:comment])
redirect_to restaurant_path
end
在我的餐厅展示模板中
<%= form_for([@restaurant, @restaurant.comments.build]) do |f| %>
<h2>Add a comment</h2>
<div>
<%= f.text_area :body %>
</div>
<div>
<%= f.submit %>
<% end %>