スキーマ内のテーブルにいくつかの列を追加する必要があります。誰かがこれを行うための最良の方法を教えてもらえますか?
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::Error: テーブル 'albums' は既に存在します: CREATE TABLE albums
( id
int(11) DEFAULT NULL auto_increment PRIMARY KEY, created_at
datetime, updated_at
datetime)