Мне нужно добавить несколько столбцов в таблицу в моей схеме. Может ли кто-нибудь сказать мне, как лучше всего это сделать?
Следующее кажется неполным или неправильным, поскольку файл schema.rb не был обновлен для включения нового столбца, а все соответствующие файлы представления (edit, index, new, show) не были обновлены для включения нового столбца. Не говоря уже о раздувании всех тех классов миграции, которые создаются. Спасибо
ruby script/generate migration RecordLabelToAlbums record_label:string
exists db/migrate
create db/migrate/20121130125859_record_label_to_albums.rb
Создает это:
class RecordLabelToAlbums < ActiveRecord::Migration
def self.up
end
def self.down
end
end
Затем я добавил это:
class RecordLabelToAlbums < ActiveRecord::Migration
def self.up
add_column :albums, :record_label, :text
end
def self.down
remove_column :albums, :record_label
end
end
Я побежал:
rake db:migrate
Получил это: Mysql:: Ошибка: таблица «альбомы» уже существует: CREATE TABLE albums
(id
int (11) DEFAULT NULL auto_increment PRIMARY KEY, created_at
datetime, updated_at
datetime)
rake db:migrate
? Вам нужно будет изменить код приложения самостоятельно. - person Chowlett   schedule 30.11.2012