假设我有这3个结构
type Question struct {
gorm.Model
Id *uint64 `json:"id" gorm:"column=id;primaryKey;autoIncrement"`
Name string `json:"name" gorm:"unique"`
SkillId *uint64 `json:"skill_id"`
TestQuestions []TestQuestion `json:"test_questions"`
}
type Skill struct {
gorm.Model
SkillName string `json:"skill_name"`
Question []Question
}
type TestQuestion struct {
gorm.Model
QuestionId uint64 `json:"question_id"`
TestId uint64 `json:"test_id"`
}
我想选择所有问题,对于每个问题,我想选择该问题的技能名称而不是技能ID,并且我想预加载测试问题,我试图使此结构存储我的结果
type struct QuestionResponse(
SkillName string
Name string `json:"name"`
TestQuestions TestQuestion `json:"test_questions"`
}
我试过这个查询
db.Table("questions").Preload("TestQuestions").
Joins("inner join skills on questions.skill_id = skills.id").
Select("questions.name,skills.skill_name, questions.difficulty, questions.max_points, questions.type, questions.expected_time, questions.question_text,questions.file_read_me").
Find(&question)
但我得到这个错误“为结构github找到无效字段.com...../模型。问题响应的字段测试问题:为关系定义一个有效的外键或实现值机/扫描仪接口“任何解决方案?
凤凰求蛊
相关分类