Jon*_*ans 2 ruby activerecord ruby-on-rails
我在网上学习了一个名为Person的模型.过了一会儿,我们决定将它重命名为User更为明智.我浏览了代码库并执行了以下操作:
我有另一个名为session的模型:
session belongs_to user
和
用户has_many会话
在运行迁移之前git grep -i person/people并找到| grep person/people只返回迁移,所以我确信我已经正确地重命名了一切.
当我创建一个随后创建会话的新用户时,我收到以下错误:
未知属性:user_id
再次运行git grep我发现会话中的外键仍然是person_id
create_table "sessions", :force => true do |t|
t.integer "person_id
t.string "ip_address"
t.string "path"
t.datetime "created_at", :null => false
t.datetime "updated_at", :null => false
end
Run Code Online (Sandbox Code Playgroud)
我怎样才能解决这个问题?
只是在迁移中
def change
rename_column :sessions, :person_id, :user_id
end
Run Code Online (Sandbox Code Playgroud)