0
たとえば、次のようなgormオブジェクトがテーブルにあります。golang 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 |
+----+-------+--------+
私は、ユーザーが与えられていないすべての電話を選択したいと思います。
Gdb.Order("id desc").Where("status = ?", true).Find(&phones).Related("UserPhones").Not("UserPhones.User.ID = ?", user.ID)
私に知らせてくださいモデルの構造体を必要に応じて:!私が試したものthats user_phones.user_id = 1 *携帯電話を選択しますよう 何か。
ご協力ありがとうございます。
私は結果として何も得られませんでしたが、ID 3の電話機エントリが必要でした。 – user1644033
ログ/エラーチェックで自分の回答を更新しました。もう一度やり直せますか? –
ああ私はいくつかの場所が必要でした。どこか( "user_phones.idがnull"です)。 :) – user1644033