【发布时间】:2014-08-25 10:41:34
【问题描述】:
我有一个模型友谊,其中 :friend_id 也是外键 :user_id
友谊 编号 |用户 ID |朋友ID 我知道验证这两个字段的唯一性是这样的
validates :user_id, :uniqueness => {:scope => :friend_id}
但是有没有办法验证
user_id = 1, friend_id = 3
user_id = 3, friend_id = 1
这样只存储user_id = 1,friend_id = 3?
【问题讨论】:
-
为什么你不想拒绝第二种情况?这不是用户 20 添加用户 10 的场景吗?
-
你使用的是哪个数据库??
-
我还建议您将模型重命名为
Friendship,因为您不创建和管理Friend,而是用户之间的友谊。 -
在你的情况下 1 你的意思是数据不应该重复??有重复
-
我会避免禁用第二种情况。老实说,这就是您应该如何创建友谊模型 - 始终为每个友谊建立两个连接,这样您就可以轻松加载它们(例如加入、包含)
标签: ruby-on-rails