gpt4 book ai didi

sql - has_many 与 uniqness couples 的关系

转载 作者:太空宇宙 更新时间:2023-11-03 16:08:01 25 4
gpt4 key购买 nike

我在我的应用程序中遇到用户唯一性对的问题...

我有用户女巫可以链接到一些联系人。我使用关系表来做我的链接(女巫也有一个级别属性 - 用于不同级别的关系)

所以我有用户、联系人和关系。我的问题是这对 contact_id 和 user_id 必须是唯一的(它们只能链接一次)。

联系人.rb

has_many :relations, :dependent => :destroy

has_many :users, :through => :relations, :uniq => true

用户.rb

has_many :relations, :dependent => :destroy

has_many :contacts, :through => :relations, :uniq => true

关系.rb

belongs_to :user

belongs_to :contact

我不知道我是否必须使用 foreign_key 或其他什么,我只需要一些简单的东西:)

干杯

最佳答案

您可以在唯一性验证中使用 :scope 选项。像 validates_uniqueness_of :contact, :scope => :user 这样的东西意味着对于给定的用户,不会有重复的联系人。因此,如果您验证每个属性都限定在另一个属性范围内,我认为它会产生您想要的结果。可能有更好的方法(虽然我显然不知道)。

关于sql - has_many 与 uniqness couples 的关系,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9566429/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com