【发布时间】:2020-09-25 00:04:07
【问题描述】:
我在聊天室和用户之间有多对多关系,其中一个房间可以有很多用户。我想在创建房间之前检查是否存在具有相同用户的房间。例如,我有 2 个 id 为 1 和 6 的用户,如果没有房间有 id 为 1 和 6 的用户,我将为他们创建一个房间,我将创建一个房间。否则,不创建房间,返回存在房间
type Room struct {
gorm.Model
ID uint `json:"id" gorm:"primary_key"`
Hash string `json:"hash" binding:"required" gorm:"not null:true"`
Users []User `json:"users" gorm:"many2many:room_users"`
Messages []Message `json:"messages"`
}
type User struct {
gorm.Model
ID uint `json:"id" gorm:"primary_key"`
Name string `json:"name" binding:"required" gorm:"not null:true"`
Phone string `json:"phone"`
Email string `json:"email" binding:"required,email" gorm:"not null:true"`
Password string `json:"password" binding:"required,min=8" gorm:"not null:true"`
Gender string `json:"gender" binding:"Enum=male_female" gorm:"type:gender;not null:true;default:male"`
}
【问题讨论】: