例如,我在表格中有以下 gorm 对象。
user
+----+------+
| id | name |
+----+------+
| 1 | John |
+----+------+
| 2 | Jane |
+----+------+
phones
+----+------+
| id |number|
+----+------+
| 1 | 0945 |
+----+------+
| 2 | 0950 |
+----+------+
| 3 | 1045 |
+----+------+
user_phones
+----+-------+--------+
| id |user_id|phone_id|
+----+-------+--------+
| 1 | 1 | 1 |
+----+-------+--------+
| 2 | 1 | 2 |
+----+-------+--------+
| 3 | 2 | 3 |
+----+-------+--------+
使用 gorm 我想选择所有没有给定用户的手机。类似的东西:选择 * 手机,其中 user_phones.user_id != 1 这就是我试过的:
Gdb.Order("id desc").Where("status = ?", true).Find(&phones).Related("UserPhones").Not("UserPhones.User.ID = ?", user.ID)