【问题标题】:rails 3 - belongs_to :uniquenessrails 3 - belongs_to :uniqueness
【发布时间】:2011-05-20 09:16:42
【问题描述】:

我想做一对一的关系,独一无二。

所以我在模型中有这个关联和验证

belongs_to :自行车 验证 :bicycle, :presence => true, :uniqueness => true

然后给我这个错误:

ActiveRecord::StatementInvalid: SQLite3::SQLException: 在 "FROM" 附近: 语法错误: SELECT FROM "transactions" WHERE ("transactions"."bicycle" IS NULL) AND ("transactions"."bicycle" IS NULL)限制 1 个

不知道为什么查询构造不好...是rails3的bug?

【问题讨论】:

  • 这可能与验证无关...您可以发布实际生成 sql 的代码吗?

标签: ruby-on-rails validation belongs-to unique


【解决方案1】:

您可能应该验证属性而不是关联。在这种情况下,属性将是 bike_id。因此,如果您将其更改为:

validates :bicycle_id, :presence => true, :uniqueness => true

应该可以的。

【讨论】:

  • 不...你在写..必须是bike_id而不是bike...但是继续同样的错误:ActiveRecord::StatementInvalid: SQLite3::SQLException: near "FROM": 语法错误: SELECT FROM "transactions" WHERE ("transactions"."bicycle_id" IS NULL) AND ("transactions"."bicycle_id" IS NULL) LIMIT 1
猜你喜欢
  • 1970-01-01
  • 2013-09-14
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2023-03-29
  • 1970-01-01
  • 2011-12-20
相关资源
最近更新 更多