【问题标题】:How can I change the data type on rails?如何更改 Rails 上的数据类型?
【发布时间】:2016-02-03 23:56:48
【问题描述】:

我想将数据类型从string修改为text,按照教程从

Changing a column type to longer strings in rails

然后运行 ​​rake db:migraterake db:rollback 但它给了我一条错误消息

== 20160203133535 ChangeNameToProfessors:迁移=========================== -- change_column(:professors, :name, :text) 耙中止! StandardError:发生错误,此迁移和所有后续迁移已取消:

我该如何解决?

感谢您的回答!

【问题讨论】:

  • 你可以从分享你得到的实际错误开始:)
  • 给出更多错误信息。
  • 请向我们展示您的迁移文件的内容

标签: ruby-on-rails


【解决方案1】:

如果您只想更改单个列:

def change
  change_column :table_name, :column_name, :text
end

如果您要执行回滚,请先执行回滚,然后再更改(已经存在的)迁移文件。您无法使用更改的迁移文件执行回滚,这可能会在您的场景中发生。

回滚后将迁移文件更改为正确的(新)列,然后再次迁移。

【讨论】:

  • OP 做了,正如我在错误消息change_column(:professors, :name, :text) 中看到的那样。其他地方有问题,或者我不知道。
猜你喜欢
  • 2013-12-30
  • 2016-11-25
  • 1970-01-01
  • 2012-05-26
  • 1970-01-01
  • 1970-01-01
  • 2014-04-08
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多