基于Django中的ManyToManyField创建QuerySet

时间:2012-12-05 05:02:46

标签: python django django-models

所以我有两节课;图片和标签如下:

class Tag(models.Model):
        pics = models.ManyToManyField('Picture', blank=True)
        name = models.CharField(max_length=30)
        # stuff omitted

class Picture(models.Model):
        name = models.CharField(max_length=100)
        pub_date = models.DateTimeField('date published')
        tags = models.ManyToManyField('Tag', blank=True)
        content = models.ImageField(upload_to='instaton')
        #stuff omitted

我想要做的是获取一个查询集(对于ListView),给定一个标记名称,该标记名称包含被标记为最近的X个图片。我查找了非常类似的问题,但没有任何回复对我有任何意义。我将如何创建此查询集?

1 个答案:

答案 0 :(得分:1)

试试这个

tag = Tag.objects.get(name ='tagname')

Picture.objects.filter(tags = tag).order_by(' - pub_date')[X]