覆盖ActiveRecord中的所有表名约定

时间:2010-02-11 18:03:14

标签: ruby activerecord

我的项目不使用表名中的复数约定。 我该如何覆盖这个约定 不在我的所有ActiveRecord类中调用set_table_name

2 个答案:

答案 0 :(得分:6)

您必须在rails项目中创建一个初始化程序,如下所示:

# file: config/initializers/active_record_extensions.rb

ActiveRecord::Base.pluralize_table_names = false

默认情况下,这将使您的所有表名在模型上都是单数。

答案 1 :(得分:1)

如果它只是特定的表而不是全部

self.pluralize_table_names = false

效果很好。