首先是一个警告:我是 Ruby on Rails 的新手。当实体在复数和单数中具有相同的名称时,我正在创建一个应用程序并遇到创建控制器的问题。就我而言,它是“鱼”,所以我有一个Fish
模型、一个FishController
、一个fish
表等。它工作得很好(令人惊讶的是,至少对我来说),除非我尝试使用路径助手:
<%= link_to 'My fishes', fish_path %>
当我尝试这样做时,rails 向我显示一个错误
No route matches {:action=>"show", :controller=>"fish"} missing required keys: [:id]
我知道当你有一个资源时:apples
,apples_path
会引用索引和apple_path(:id)
(不带 s)到show
特定项目的方法。我对正在发生的事情的猜测是,当我说fish_controller
我指的是该show
方法时,因此会出现错误:它缺少一个 ID。
我的问题是,我如何称呼“复数”fish_path
去index
?
还有一个预防性问题:你知道我能找到与这个名字的“怪异”相关的任何其他问题吗?