J'ai la structure suivante (tronquée pour plus de lisibilité)
type schedule struct { id int userid int user user `gorm:"embedded;foreignkey:userid;references:userid"` }
Et puis voici ma structure d'utilisateurs (encore une fois tronquée pour plus de lisibilité) :
type user struct { id int userid int isactive bool }
Je récupère les valeurs dans la structure schedule
结构上尝试 createinbatches
(如 []schedule
)。但是当我这样做时,插入查询还尝试插入 user
.
Insérer un exemple (partie de code) :
err := db.transaction(func(tx *gorm.db) error { if err := tx.createinbatches(&schedules, len(schedules)).error; err != nil { return err //rollback } }
Pour être complet, voici les erreurs :
Error Inserting Schedule Batch: Error 1054: Unknown column 'is_active' in 'field list'
Y a-t-il une balise ou quelque chose que je puisse faire pour omettre la structure utilisateur de la requête d'insertion ? Lorsque je génère la requête, elle s'affiche
insert into schedule(计划列...,[附加用户结构列])
J'ai également essayé la balise d'autorisations de champ en fonction de la documentation ici
Le problème est que vous êtes dans la balise schedule
结构中为 user
使用 embedded
. Lorsque vous le supprimez, cela devrait fonctionner comme prévu. Vous pouvez en savoir plus dans Documents
Votre schedule
structure devrait donc ressembler à ceci :
type Schedule struct { ID int UserId int User User `gorm:"foreignKey:UserId;references:UserId"` }
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!