gpt4 book ai didi

ruby-on-rails - Rails 模型和独特的组合

转载 作者:行者123 更新时间:2023-12-04 03:37:40 24 4
gpt4 key购买 nike

我有一个 Rails 应用程序,它有一个名为 friendrequests 的表。它看起来像这样:

user1_id:integer user2_id:integer hasaccepted:boolean

我正在创建一个添加 friend 的选项,但好友请求只能发送一次。所以你不能在数据库的数据中有这样的东西:

user1_id | user2_id | hasaccepted
1 | 2 | false
1 | 2 | false

user1_id | user2_id | hasaccepted
1 | 2 | false
2 | 1 | false

user1_id/user2_id 组合必须是唯一的,而不是列本身,所以这是可能的:

user1_id | user2_id | hasaccepted
1 | 2 | false
1 | 3 | false

是否可以在模型中定义它?我该怎么做?

最佳答案

对于第一种情况,在您的 FriendRequest 模型中,使用 validates_uniqueness_of(:user1_id, :scope => :user2_id)。您可能还需要反过来。对于第二种情况,我将覆盖 FriendRequest 中的 #validate 并在那里进行检查(有关该方法应如何执行的详细信息,请参阅 API docs)。

关于ruby-on-rails - Rails 模型和独特的组合,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2291240/

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