【发布时间】:2017-06-06 23:14:08
【问题描述】:
我有这个模型,多对多,我想获取与标签列表匹配的所有 Gif。
type Tag struct {
ID uint `gorm:"primary_key" json:"id,omitempty"`
Name string `gorm:"not null;unique" json:"name,omitempty"`
}
type Gif struct {
ID uint `gorm:"primary_key" json:"id,omitempty"`
Url string `gorm:"not null;unique" json:"url,omitempty"`
Tags []Tag `gorm:"many2many:gif_tags;" json:"tags,omitempty"`
}
我准备了一个游乐场here。
如果我有一个包含tag1 和tag2 的标签数组,我想在&gifs 中获得gif1 和gif2。
我多次阅读文档,发现与我的问题相反,即获取给定 gif 的标签。
我需要更换模型吗?
是否可以在多对多关系中设置两个 Associations 字段?
【问题讨论】:
-
请让您的游乐场可用,并在您需要修复的部分附近放置一个 cmets。现在它充满了错误。
-
由于外部导入,操场无法工作。我更新了链接。如果您在计算机上运行它,它现在可以正常工作。我在需要帮助的地方添加了评论。
-
hmmm... 看起来 Go-GORM 没有反向引用支持。所以你应该切换模型并在
Tag中声明引用。 -
感谢您的回答!所以你认为没有办法在两个模型中放置相同的关联?
标签: sql go many-to-many go-gorm