django-针对对象筛选外键
以下查询是否正确django-针对对象筛选外键,django,django-models,Django,Django Models,以下查询是否正确 class Blog(models.Model): name = models.CharField(max_length=100) class Entry(models.Model): blog = models.ForeignKey(Blog) headline = models.CharField(max_length=255) 我理解以下任何一种方法都更优雅,甚至更值得推荐 a = Blog.objects.get(id__exact=14)
class Blog(models.Model):
name = models.CharField(max_length=100)
class Entry(models.Model):
blog = models.ForeignKey(Blog)
headline = models.CharField(max_length=255)
我理解以下任何一种方法都更优雅,甚至更值得推荐
a = Blog.objects.get(id__exact=14)
b = Entry.objects.filter(blog = a)
换句话说,我可以传递一个对象(模型实例)作为参数值吗
还请提供一些指导,说明在哪里可以找到关于此的明确文档?是的,根据django文档;可以使用行的实例进行筛选 备选方案:
Entry.objects.filter(blog__id__exact=3) # Explicit form
Entry.objects.filter(blog__id=3) # __exact is implied
Entry.objects.filter(blog__pk=3) # __pk implies __id__exact
链接断了
a = Blog.objects.get(pk=3)
b = a.blog_set.all()