【发布时间】:2020-08-18 17:49:54
【问题描述】:
我是 Rails 新手,正在尝试构建我的第一个 MVC 应用程序。我正在尝试创建链接文件路径并收到此错误消息 -
Pages#my_profile 中的 ActionController::UrlGenerationError 没有路线匹配 {:action=>"show", :car_id=>10, :controller=>"bookings"},缺少必需的键:[:id]
这是我在视图中使用的代码
<%= link_to booking.car.make, car_booking_path(booking[:id])%></h2>
当我在 Rails 控制台中输入预订时,我可以访问以下哈希
#
所以我不确定为什么,当 booking[:id] 被传递时,它没有被选中。
我的路线是
car_booking GET /cars/:car_id/bookings/:id(.:format) bookings#show
有人知道我缺少什么吗? 任何帮助将不胜感激。
【问题讨论】:
-
请注意,您的路线需要两个变量::car_id 和 :id。您视图中的路径仅提供预订的 :id。路径应该是
car_booking_path(booking[:car_id], booking[:id])。 -
@dbugger
[booking.car, booking]而不是car_booking_path(booking[:car_id], booking[:id])为您节省了 26 次键盘敲击...
标签: ruby-on-rails