Изменить форму множественного числа сгенерированной модели в рельсах? - PullRequest
10 голосов
/ 31 июля 2010

Я использую эту команду:

rails generate model DayOfMonth day:integer

Rails сгенерировал модель "DayOfMonth" и таблицу "day_of_months".

Вместо этого я хочу создать таблицу "days_of_month".

Я знаю, что это как-то связано с классом Inflector и inflector.rb в папке инициализаторов.

Но я не понимаю, как заставить это работать.

Я использую Rails 3.

Может ли кто-нибудь помочь мне здесь или указать мне учебник для этого?

Спасибо

Ответы [ 3 ]

15 голосов
/ 31 июля 2010
ActiveSupport::Inflector.inflections do |inflect|
 inflect.irregular 'day of month', 'days of month'
end

Чтение: http://api.rubyonrails.org/classes/ActiveSupport/Inflector.html

6 голосов
/ 01 августа 2010

Вы можете просто отредактировать миграцию и затем добавить

Rails 3.2+ / 4 +

class DayOfMonth < ActiveRecord::Base
   self.table_name = "days_of_month"
end

Rails 3

class DayOfMonth < ActiveRecord::Base
  set_table_name "days_of_month"
end
5 голосов
/ 16 октября 2012

Вы должны сказать, что такое множественное число «день месяца» в инициализаторе «inflections.rb»:

ActiveSupport::Inflector.inflections do |inflect|
     inflect.irregular 'day of month', 'days of month'
     inflect.irregular 'day_of_month', 'days_of_month'
end

, который работал для меняХотя я все еще получаю ошибки при определении связей с этой моделью:

has_many :days_of_month
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...