В современных Rails вы бы использовали inheritance_column=
(как отмечено панкреус ):
class M < ApplicationRecord
self.inheritance_column = 'whatever'
#...
end
В более старых версиях Rails (то есть, что было, когда этот ответ был изначально написан), вы бы
Вы можете использовать [set_inheritance_column
] [3], чтобы изменить имя:
Устанавливает имя столбца наследования для использования в данное значение, или (если значение nil
или false
) в значение, возвращаемое данным блоком.
Столбец все еще должен быть строкой (или text
), так как AR захочет поместить туда имя класса :
Наследование одной таблицы
Active Record позволяет наследовать, сохраняя имя класса в столбце с именем «type» по умолчанию.