基本的にフォームを介して db テーブルと対話する Web アプリに取り組んでいます。最近、いくつかの変更を加える必要があり、その結果、db テーブルに別の列が追加されました。開発に RubyMine を使用していますが、新しい列が含まれるようにモデルを更新する方法がわかりません。次のようにモデル内に追加しました。
class Student < ActiveRecord::Base
attr_accessible :f_name, :floor_pref, :l_name, :is_active
validates_presence_of :f_name, :floor_pref, :l_name
end
schema.rb 内にも追加しました。
ActiveRecord::Schema.define(:version => 20130620140537) do
create_table "students", :force => true do |t|
t.string "f_name"
t.string "l_name"
t.string "floor_pref"
t.boolean "is_active"
t.datetime "created_at", :null => false
t.datetime "updated_at", :null => false
end
end
また、移行内でも次のようになります。
class CreateStudents < ActiveRecord::Migration
def change
create_table :students do |t|
t.string :f_name
t.string :l_name
t.string :floor_pref
t.boolean :is_active
t.timestamps
end
end
end
問題は、Rails コンソールを実行してモデル オブジェクトを検索すると、追加した新しい列 (:is_active) が表示されないことです。古い列のみが表示されます。
>> Student
Loading development environment (Rails 3.2.13)
Switch to inspect mode.
Student(id: integer, f_name: string, l_name: string, floor_pref: string, created_at: datetime, updated_at: datetime)
私は何が欠けていますか?