Я написал файл миграции со следующим кодом:
class AddScheduleIdToPlayers < ActiveRecord::Migration
def change
add_column :players, :schedule_id, :integer
add_column :schedules, :coach_id, :integer
end
end
Плохо ли создавать два файла миграции, по одному на каждое изменение, или это нормально?
ruby-on-rails
migration
Эрик Болдуин
источник
источник
Ответы:
Вы хотите сохранить связанные изменения вместе. Например, если вы реализуете двунаправленное отношение и добавляете столбцы / таблицы для достаточных отношений AR, вы хотите сохранить их в одной миграции.
Если изменения в схеме не связаны друг с другом (например, части различных функций), лучше хранить их в отдельных миграциях.
Я делаю мысленный эксперимент, когда я не уверен. Я пытаюсь разбить миграцию на наименьшие возможные кусочки, а затем проверяю, работает ли моя функция, если я сниму только одну из кусочков. Если это так, скорее всего, этот кусок не относится к этой миграции.
Твой взгляд выглядит так, будто его можно разделить на две миграции. Кажется, у вас есть две особенности здесь. Один о добавлении расписаний для игроков, а другой - о добавлении тренеров в расписание.
источник