gpt4 book ai didi

ruby-on-rails - Rails 为模型创建了错误的表名

转载 作者:行者123 更新时间:2023-12-02 05:43:00 27 4
gpt4 key购买 nike

我正在使用 rails g model Stadium 创建一个名为 Stadium 的模型,但 rails 正在将表名称转换为 stadia

我在迁移中手动将表名更改为 stadium,并在我的模型类中添加了 set_table_name "stadium"。但我所有的路线都在寻找 stadia_path

我试过 rails g model Stadium --force-plural 但没有成功。

我想我应该为此使用一个词形变化,但我不知道如何创建这个词形变化。 Stadium 是单数,我仍然需要这个模型的复数体育场。

最佳答案

字典说“stadiums”和“stadia”都是正确的(鉴于这个词是拉丁语,“stadia”作为以 -um 结尾的中性词的复数形式似乎是合法的)。

只需将其添加到 config/initializers/inflections.rb 中:

ActiveSupport::Inflector.inflections do |inflect|
inflect.irregular 'stadium', 'stadiums'
end

在这里可以设置各种不规则复数。

通过做来摧毁你的老一代

rails d model Stadium

然后再次生成它

rails g model Stadium

您将看到它如何神奇地创建这样的文件:

db/migrate/20130330130335_create_stadiums.rb

然后运行迁移,一切就绪!

关于ruby-on-rails - Rails 为模型创建了错误的表名,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15718681/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com