我有这两种型号
class Genre( TimeStampAwareModel ):
genre = models.CharField ( max_length = 255, blank = False )
parent = models.ForeignKey ( 'self', null=True, blank=True, related_name = "childs" )
..
class Track( TimeStampAwareModel ):
....
genre = models.ManyToManyField( Genre )
我有一个类型[流行,摇滚,…]的输入列表,因为流行和摇滚也有子类型。现在我要过滤满足以下条件的所有轨迹
(G1parent或G1child1或G1child2或….)和(G2parent或G2child1或G2child2或….)
^{pr2}$这里G1parent是Pop,G2parent是Rock,我怎么能得到这个?寻找一个优雅的解决方案。在
谢谢!在
如果我能正确理解你的意思,你希望所有的曲目要么是“摇滚”的流派,要么是“摇滚”作为父类的曲目。如果是:
编辑
事实上,在重读了这个问题之后,你似乎想要我说的,但是为了一个流派的列表,而不是一次一个。为此,您只需对上述代码进行如下调整:
^{pr2}$更新
啊,那就有点复杂了,但还是可行的。在
您可以在一行中完成所有这些,但是代码在这一点上变得有点混乱。在
更新
你今天真的在给我精神上的锻炼,是吗?;)
你需要做一些类似的事情:
相关问题 更多 >
编程相关推荐