Learning Rails 3.0 - Справка по миграции - относится к - PullRequest
1 голос
/ 24 августа 2011

Я работаю над приложением фотогалереи. Фото имеет отношение «принадлежат к альбому» (альбом имеет отношение к фотографии). Как мне создать миграцию, которая правильно добавляет это отношение в базу данных? Я пытался - рельсы генерируют add_album_to_photo, но это происходит как пустая миграция. Я мог бы использовать толчок в правильном направлении.

1 Ответ

3 голосов
/ 24 августа 2011

Предполагая, что таблицы albums и photos уже существуют, все, что вам нужно сделать, это добавить столбец album_id в таблицу photos:

class AddAlbumToPhoto < ActiveRecord::Migration
  def self.up
    add_column :photos, :album_id, :integer
  end

  def self.down
    remove_column :photos, :album_id
  end
end

Или:

class AddAlbumToPhoto < ActiveRecord::Migration
  def self.up
    change_table :photos do |t|
      t.references :album
    end
  end

  def self.down
    change_table :photos do |t|
      t.remove :album_id
    end
  end
end

Или, если вы настаиваете на создании кода:

rails g migration add_album_to_photo album_id:integer
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...