Fra*_*ine 6 python django self-reference
我有以下django模型:
class Category(models.Model):
name = models.CharField(maxlength=20)
parent = models.ForeignKey('self', null=True)
Run Code Online (Sandbox Code Playgroud)
请注意,该字段parent是自引用的,即类别可以具有父级.
如何查找Category没有子类别的所有对象?
你可以用isnull与related_query_name:
class Category(models.Model):
# ...
parent = models.ForeignKey('self', null=True, related_name='children', related_query_name='child')
Category.objects.filter(child__isnull=True)
Run Code Online (Sandbox Code Playgroud)
在这里,我建议至少指定一个有意义的related_name!如果仅指定a related_name,则related_query_name默认为该名称(此处为:) children.如果您不指定两者,则rqn默认为型号名称: category, 而不是 category_set
Category.objects.filter(category__isnull=True) # not so informative
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1219 次 |
| 最近记录: |