首页 > 解决方案 > 找不到控制器操作缺少必需的键

问题描述

我相信我的错误是它缺少特定的茶 ID 来呈现茶评论页面。但我不确定我是否正确阅读了这个错误。下面是错误。

No route matches {:action=>"new", :controller=>"reviews"}, missing required keys: [:tea_id]

1 <h1> All Tea Blends </h1>
2
3
4 <% @teas.each do |tea| %>
5
6 <h2><%= link_to tea.flavor, tea_path(tea.id)%> - <%= tea.brand.name %> </h2>
7 <% link_to "Write a review", new_tea_review_path%>

标签: ruby-on-railsrubymodel-view-controller

解决方案


路由路径将链接到控制器中的新操作。默认情况下,rails 会创建一个私有方法,它将为您设置茶对象。

因此,您正在寻找的动作是new_tea_review_path(tea)因为它被控制器提供给视图。您可以在第 4 行中看到这一点,您正在循环浏览每种茶。该@teas变量由您的茶控制器提供。


推荐阅读