У меня есть рельсы 4 приложения.Добавить внешний ключ к существующей модели рельсов
У меня есть две таблицы, одна для «области» и одна для «данных». Данные относятся к сфере охвата. Я забыл добавить внешний ключ при настройке данных, и теперь я пытаюсь написать миграцию, чтобы добавить его.
Я создал таблицу изменений, но миграция, которую я написал, не работает.
Я не могу следовать примеру направляющих рельсов, потому что это не соответствует опыту, который у меня есть в моей установке (не знаю, почему).
Миграция у меня есть:
class AddFKeyToData < ActiveRecord::Migration
def change
add_foreign_key :data, :scopes
end
end
Пожалуйста, вы можете мне помочь определить проблему.
Спасибо
Спасибо, Джон. Означает ли это, что я не обязан говорить, что это внешний ключ? – Mel
Его рельсы волшебство! Rails признает это сам по себе! Но вы должны быть уверены, что первая таблица называется 'data', а ключ из области называется' scope_id'. Чтобы быть уверенным на 100%, зайдите в папку проекта rails и откройте 'db \ schema'! Там вы можете увидеть свои существующие миграции! Если вы не уверены! Просто опубликуйте его! –
Извините, но вы все равно должны добавить к своей модели данных: 'belongs_to: scope' и вашей модели:' has_many: datas' Тогда вы можете позвонить, например, 'Scope.first.datas' –