我该如何对付移民的名字的冲突?(How do I deal with migration name

2019-10-18 06:42发布

我安装了一个购物车的宝石(Piggybak),即创建了一个名为迁移create_orders... ...但我不再使用的宝石,并增加了一个迁移下降到piggybak相关的所有表。

不过,我想推出自己的购物车,当我创建了一个名为新的迁移create_order即使它有一个不同的时间戳,我得到这个错误:

$ rake db:migrate
[RailsAdmin] RailsAdmin initialization disabled by default. Pass SKIP_RAILS_ADMIN_INITIALIZER=false if you need it.
rake aborted!
Multiple migrations have the name CreateOrders

所以......我改名迁移到create_non_piggybak_orders ,我现在收到此错误:

rake aborted!
An error has occurred, this and all later migrations canceled:

uninitialized constant CreateNonPiggybakOrders/.rvm/gems/ruby-2.0.0-p0@myapp/gems/activesupport-3.2.13/lib/active_support/inflector/methods.rb:230:in `block in constantize'

什么是处理这种情况的最好方法?

Answer 1:

打开迁移文件并更改类首字母大写的文件相匹配的名字,那就是:

class CreateNonPiggybakOrders < ActiveRecord::Migration



文章来源: How do I deal with migration name clashes?