我将add_column:microposts,:type,:string添加到我的一个db迁移中(如果重要的话,不是最近的一个)。并且还运行了rake db:reset。所以我肯定做了改变。但是现在如果我运行rake db:migrate或bundle exec rake db:migrate,它不会输出任何内容。如果我运行跟踪......
alex@alex-ThinkPad-T410:~/rails_projects/final2$ rake db:migrate --trace
** Invoke db:migrate (first_time)
** Invoke environment (first_time)
** Execute environment
** Invoke db:load_config (first_time)
** Invoke rails_env (first_time)
** Execute rails_env
** Execute db:load_config
** Execute db:migrate
** Invoke db:_dump (first_time)
** Execute db:_dump
** Invoke db:schema:dump (first_time)
** Invoke environment
** Invoke db:load_config
** Execute db:schema:dump
答案 0 :(得分:0)
您写道:
我在我的一个数据库中添加了add_column:microposts,:type,:string 迁移(如果重要的话,不是最近的迁移)。
这听起来很可疑,就像您刚刚将文本添加到迁移文件中一样。那不行。迁移状态机不会注意到实际文本文件中的更改。请检查
rake db:migrate:status
您应该创建一个新的迁移
rails g migration AddTypeToMicropost type:string
然后再次运行rake