У меня есть две модели (структуры). User
и Group
. Эти модели имеют много-много взаимосвязей.
Когда я пытаюсь создать запрос db.Unscoped().Model(&group).Related(&users, "Users")
, это возвращает:
SELECT users.* FROM users INNER JOIN user_groups ON user_groups.owner_id = users.id WHERE (1 <> 1)
.
Объекты:
type Group struct {
gorm.Model
ID uint `json:"id"`
Name string `json:"name"`
Users []User `gorm:"many2many:user_groups;association_jointable_foreignkey:owner_id"`
}
type User struct {
...
Groups []Group `gorm:"many2many:user_groups;association_jointable_foreignkey:group_id"`
}
Обработчик
users := []models.User{}
group := models.Group{}
db.Unscoped().Model(&group).Related(&users, "Users")
Я не знаю причины для генерации дополнительных where
.