Django queryset外键

用户名

在Django中针对外键关系进行反向查找的正确方法是什么?例如,假设我有以下2个模型。

class Songs(models.Model):
    title = models.CharField(max_length=200)
    artist = models.CharField(max_length=200)
    genre = models.ForeignKey('Genres')

class Genres(models.Model):
    genre = models.CharField(max_length=100)

如果我希望用户能够根据流派搜索歌曲,我该怎么做?

例如,下面是我想要做的,但是我知道它不起作用,因为Songs表的genre列是ID,而不是关键字。

song = models.Songs.objects.get(genre='Jazz')
ec

使用双下划线语法可以到达genre相关模型中字段:

Songs.objects.filter(genre__genre='Jazz')

出于可读性和一致性的考虑,请考虑将该genre字段重命名name

class Genres(models.Model):
    name = models.CharField(max_length=100)

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章