Як явно вказати відображення імені таблиці моделі в Rails?


230

У мене є клас Model під назвою Країни, і я хочу, щоб він відобразився в таблиці БД під назвою "cc".

Як це робиться в Rails?

Відповіді:


427

Рейки> = 3,2 (включаючи рейки 4+ і 5+):

class Countries < ActiveRecord::Base
  self.table_name = "cc"
end

Рейки <= 3,1:

class Countries < ActiveRecord::Base
  self.set_table_name "cc"
  ...
end

Чи найкраще вказати практику table_nameдля кожної моделі?
Сун Чо

10
@MikeC - Ні. Це спосіб рейки бути максимально коротким і писати код лише тоді, коли він переписує конвенції.
toobulkeh

@SungWonCho Не найкраща практика вказувати назву таблиці для кожної моделі, лише використовувати це, коли вам потрібно інше ім'я для таблиці
Торін

137
class Countries < ActiveRecord::Base
    self.table_name = "cc"
end

У Rails 3.x це спосіб вказати назву таблиці.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.