我将 Rails 2.2.2 站点迁移到 Rails 3.1。架构是相同的,但现在当模型在部分 INSERT 上调用 save() 时出现 ActiveRecord 错误。
这导致了一个约束问题,这实际上不是因为该列在 PostGres 中自动递增,因此它永远不会为 NULL。
Rails 是所有约定,我认为它假定 'id' 列是主键。
处理这个问题的最佳方法是什么?
1)从架构列定义中删除“NOT NULL”
2)从 Rails 3 内部以某种方式告诉 ActiveRecord.save() 忽略这个约束,因为它是一个自动增量字段?
谢谢!