Ассоциации и (множественные) внешние ключи в рельсах (3.2): как описать их в модели и записать миграции
У меня есть 3 модели: вопрос, вариант, правило
Вопрос has_many вариантов; Опция нуждается во внешнем ключе для question_id
Таблица правил состоит из 3 foreign_keys:
2 columns/references to question_ids -> foreign keys named as 'assumption_question_id' and 'consequent_question_id' 1 column/reference to option_id -> foreign key named as option_id or condition_idАссоциации для правила: Вопрос has_many правила; а также Опция has_one rule
Я хочу понять, как написать миграцию для этого и как это ассоциируется с «has_many» / »принадлежит_ к». операторы, которые я записываю в моей модели, и "иностранный ключ"; вариант, который я могу включить в мою модель.
У меня было это для моей миграции Option, но я не уверен, как использовать & quot; add_index & quot; оператор работает с точки зрения внешних ключей и того, как я могу использовать его для переноса своего правила: (мои модели Вопросов и Вариантов имеют соответствующие операторы has_many и own_to - и работают нормально)
class CreateOptions < ActiveRecord::Migration
def change
create_table :options do |t|
t.integer :question_id
t.string :name
t.integer :order
t.timestamps
end
add_index :options, :question_id
end
end
Спасибо вам за помощь!