[英]Django Get object if it has foreignkey
I'm creating an article app (in django) where articles can have images. 我正在创建一个文章应用程序(在Django中),其中文章可以包含图像。 I want to get articles only when they have at least one image.
我只想获得具有至少一张图像的文章。 I already tried:
我已经尝试过:
Article.objects.all().annotate(num_extra=Count("Image")).order_by("-num_extra")
But that only returned a sorted queryset starting with the most images and thats not wat I want. 但这只返回了以最多图像开始的排序查询集,而那不是我想要的。 Is there a way to do that?
有没有办法做到这一点?
My models.py 我的models.py
class Article(models.Model):
id = models.CharField(max_length=8, default=None, primary_key=True, blank=True, verbose_name="ID", unique=True, editable=False)
Category = models.ForeignKey(Category, default=None, on_delete=models.CASCADE, verbose_name="Kategorie")
text = models.CharField(max_length=678543)
#And some other fields
class Image(models.Model):
Article = models.ForeignKey(Article, on_delete=models.CASCADE, default=None, verbose_name="Artikel")
authors = models.ManyToManyField(User, verbose_name="Autor", default=None, blank=True)
#And some other fields
您可以过滤图像中不存在Image
尝试以下操作:
Article.objects.filter(image__isnull=False)
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.