2017-11-11 176 views
0

期间schema.rb文件升级到Rails 5之后,我收到类似以下每次我尝试从模式加载时间(建立一个新的计算机上的应用程序的错误信息,运行rails db:test:prepare运行测试之前,等):问题与轨道5升级

ActiveRecord::StatementInvalid: PG::UndefinedObject: ERROR: type "serial" does not exist 
LINE 1: SELECT 'serial'::regtype::oid 

搜索周围没有产生太大的帮助。最相关的线程是这一个:https://github.com/rails/rails/issues/30298但我并不想运行任何新的迁移,也不会在schema_plus_indexes宝石似乎有什么关系问题(在该线程所描述的两个问题)。

回答

0

在我们的例子中,我们不要让他们已经对所有数据库运行后周围的迁移文件。因此,在升级到rails 5时,存在0个迁移文件。这个问题似乎是,如果您实际运行迁移文件(即使尝试rails db:migrate而没有迁移文件存在将不起作用),rails只会自动“修复”您的schema.rb文件。

的解决方案,对我们来说,是创建一个空白的迁移和为了得到正确格式化的schema.rb文件运行rails db:migrate