ターミナルからActiveRecordを使用してテーブルに列を追加するにはどうすればよいですか。add_columnメソッドを使用しようとしていますが、機能しません。何かアイデアはありますか?
質問する
15471 次
3 に答える
26
チームで作業している場合は、移行と必須を記述することをお勧めします。データベースを変更すると、すべての開発者の環境も更新する必要があります。そうしないと、気が狂った開発者があなたに迫ってくるでしょう。
rails generate migration AddPartNumberToProducts part_number:string
発生します
class AddPartNumberToProducts < ActiveRecord::Migration
def change
add_column :products, :part_number, :string
end
end
次に、移行を実行します
rake db:migrate
http://guides.rubyonrails.org/migrations.html
編集:
Railsコンソールのコマンドラインについては、@ tadmanの回答を確認するか、Bengalaが提案したものを使用してください
ActiveRecord::Migration.add_column :products, :part_number, :string
于 2012-07-13T20:17:43.313 に答える
24
rails c
Railsコンソールで直接移行を実行できますActiveRecord::Migration
あなたの目的のために、次のコマンドはあなたが求めることを行います:
> ActiveRecord::Migration.add_column :table_name, :field_name, :field_type
于 2016-05-24T17:10:32.330 に答える
3
ハッキングするだけなら、通常、Rails DB レイヤーを使用するよりも、何らかの SQLite クライアントを使用してデータベースを操作する方が簡単です。
プロジェクトに対してこれを行う場合は、適切な移行ファイルを作成して実行します。
これを行うことに決めた場合は、ドライバー オブジェクトadd_column
を介してメソッドを使用できます。ActiveRecord::Base.connection
于 2012-07-13T20:17:21.843 に答える