Moo*_*osa 24 rails-migrations ruby-on-rails-4
我发现了几个关于编辑迁移的类似问题,但无法解决这个问题.我进行了rails迁移,然后打开了迁移文件并在该字段中添加了默认值选项.然后运行rake db:migrate.默认值按预期填充.然后稍后进行一些迁移,我决定要删除默认值选项.我怎么做?
如果这是我最后一次迁移,我会使用db:rollback并重新创建,但由于之前完成了一些迁移,我不知道如何解决这个问题.
感谢帮助.
sev*_*cat 49
创建新的迁移和使用change_column_default.
http://apidock.com/rails/ActiveRecord/ConnectionAdapters/SchemaStatements/change_column_default
为列设置新的默认值:
Run Code Online (Sandbox Code Playgroud)change_column_default(:suppliers, :qualification, 'new') change_column_default(:accounts, :authorized, 1)将默认值设置为nil会有效地删除默认值:
Run Code Online (Sandbox Code Playgroud)change_column_default(:users, :email, nil)
Tom*_*ord 16
使包含有哈希:from和:to将使这个改变可逆的迁移:
change_column_default(:posts, :state, from: nil, to: "draft")
Run Code Online (Sandbox Code Playgroud)
因此,我建议尽可能使用此格式.
| 归档时间: |
|
| 查看次数: |
8728 次 |
| 最近记录: |