0
我将Rails 2.2.2网站迁移到了Rails 3.1。模式是相同的,但是现在当模型在部分INSERT上调用save()时,我得到一个ActiveRecord错误。Rails 3 - ActiveRecord :: StatementInvalid
这导致了一个约束问题,这实际上并不是因为该列在PostGres中自动递增,因此它永远不会为NULL。
Rails是所有的约定,我认为它假设'id'列是主键。
处理这个问题的最佳方法是什么?
1)从架构列定义中删除“NOT NULL”
2)某种方式从内部Rails 3中告诉ActiveRecord.save()忽略这个约束,因为它是一个自动递增领域?
谢谢!
不是最好的方法,因为你现在用您的架构完整性搞乱 – Slinky 2013-04-25 14:56:48