Миграция направляющих: t.references с альтернативным именем?

Таким образом, у меня есть create_table как это для Курсов в Школе:

create_table :courses do |t|
  t.string :name
  t.references :course
  t.timestamps
end

но я хочу, чтобы это сослалось на два других курса как:

has_many :transferrable_as # A Course
has_many :same_as          # Another Course

Я могу сказать следующее?

t.references :transferrable_as, :as=> :course
108
задан Arslan Ali 16 September 2017 в 14:03
поделиться

2 ответа

Я думаю, что в этом потоке есть другой, более Rails-шный способ: Scaffolding ActiveRecord: два столбца одного типа данных

В миграции:

t.belongs_to :transferrable_as

t.belongs_to :same_as

13
ответ дан 24 November 2019 в 03:29
поделиться

Я не думаю, что references принимает опцию :as, но вы можете создать свои колонки вручную...

create_table :courses do |t| 
  t.string  :name 
  t.integer :course1_id
  t.integer :course2_id 
  t.timestamps 
end 
3
ответ дан 24 November 2019 в 03:29
поделиться
Другие вопросы по тегам:

Похожие вопросы: