单数和复数形式相同,我在尝试点击New方法时遇到undefined_method错误。
我意识到为什么,我知道最简单的解决方案是使用另一个名字。
我也知道我可以创建一个自定义变形,但是什么?
问题是我真的需要像/ series,/ series / 1等网址,因为我实际上是在建模...等待它......系列事件。
使用“set”或“sequence”或其他同义词并不表达预期的含义。
一系列事件是系列而不是集合或序列。
有没有办法“别名”模型?
我应该/可以使用命名路由吗?
感谢任何帮助。
答案 0 :(得分:1)
假设您使用script/generate scaffold series
构建模型控制器等,您应该在/config/routes.rb中有一行
map.resources :series
如果您将其更改为
map.series_index '/series',:controller=>'series',:action=>:index
map.resource :series
它会起作用。或者你可以添加Eric Hill的拐点初始化器。
答案 1 :(得分:0)
所以:
class Series < ActiveRecord::Base
...
end
肯定不起作用?查看source,系列是内置的单一化规则之一,根据The Pluralizer,您应该可以命名您的模型类系列如上所述。
答案 2 :(得分:0)
你应该只能通过变形来做到这一点。在config/initializers/inflections.rb
:
ActiveSupport::Inflector.inflections do |inflect|
inflect.uncountable 'series'
end
重新启动应用以激活。