package database import "gorm.io/gorm" type Manufacturer struct { gorm.Model Name string `gorm:"unique" validate:"required,custom_unique=Name"` } type Product struct { gorm.Model Name string `validate:"required"` Price uint `validate:"required"` ManufacturerID uint `validate:"required"` Manufacturer *Manufacturer `gorm:"foreignKey:ManufacturerID;references:ID"` } type Token struct { gorm.Model UserID uint Token string User *User `gorm:"foreignKey:UserID;references:ID"` } type User struct { gorm.Model Name string `validate:"required"` Email string `validate:"required"` Password string `validate:"required"` Products []*Product `gorm:"many2many:user_products;"` Tokens []*Token `gorm:"many2many:user_token;"` }