ruby-on-rails - 找不到控制器操作缺少必需的键
问题描述
我相信我的错误是它缺少特定的茶 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%>
解决方案
路由路径将链接到控制器中的新操作。默认情况下,rails 会创建一个私有方法,它将为您设置茶对象。
因此,您正在寻找的动作是new_tea_review_path(tea)
因为它被控制器提供给视图。您可以在第 4 行中看到这一点,您正在循环浏览每种茶。该@teas
变量由您的茶控制器提供。
推荐阅读
- azure - 来自 Graph API 的权限似乎为空
- excel - Excel公式问题 - 使用工作表名称作为变量从另一个工作表导入数据
- c++ - 试图打印出链表的元素(具有多个类)
- javascript - 如何更改撰写 Instagram 等评论的时间?使用 dayjs 在反应式中
- ionic-framework - OneSignale 可以在没有 IOS Push Up 证书的情况下工作吗?
- flutter - 将 BlocProvider 与 CustomAutoRouter 一起使用
- python - 在更宽的 p 数据帧 (n, p) 上合并如何花费更多时间?
- python - itertools组合复制和删除
- flutter - 如何将现有的 Cognito Pool Id 和 AppClientId 导入到 Flutter 应用程序中?
- python - 如何索引 Matplotlib 子图