我已经运行了rails g model任务描述:text。然后我运行了rails console并输入了一些任务。我现在想要为create_tasks.rb文件添加更多属性。如.string:title。
我尝试了什么:
rake
db:migrate
然后返回控制台并打开第一个任务
并且它不显示title属性。Error:
unknown title attribute for Task
。那么,我该如何更新模型?
答案 0 :(得分:1)
欢迎使用Rails!
在这里,您可以找到有关如何处理迁移的一些教程:
基本上,每次要修改迁移时,您都必须:
rake db:rollback
rake db:migrate
我希望这会有所帮助。好编码!!
答案 1 :(得分:0)
您需要rails db:rollback
在最新迁移之前回滚数据库,将新变量添加到迁移文件,然后运行rails db:migrate
以包含迁移文件的新部分。
如果您需要回滚更多修订版(如果您在创建此模型后创建了更多迁移),则可以包含回滚次数,例如
rails db:rollback STEP=<enter number of steps>
#e.g. rails db:rollback STEP=2
或者,你也可以rails db:reset
删除所有数据库,重新创建它们,然后重新移植它们。或者您可以rails db:drop
删除数据库,然后rails db:create
和rails db:migrate
迁移新数据库。
不要编辑架构文件。运行迁移等时,架构文件会自动更新,以匹配迁移文件的内容。