Thi*_*Lam 2 django django-models
我有以下型号:
class Topping(models.Model):
...
class Pizza(models.Model):
toppings = models.ManyToManyField(Topping)
Run Code Online (Sandbox Code Playgroud)
然后我有一个顶部对象:
cheese = Topping.objects.get(name='cheese')
Run Code Online (Sandbox Code Playgroud)
然后我通过以下查询找到所有带有奶酪馅料的比萨饼:
Pizza.objects.all().filter(toppings=cheese)
Run Code Online (Sandbox Code Playgroud)
以上似乎有效,但这是正确的方法吗?
是的,虽然all()是多余的.
或者,为了避免额外的查询来获取cheese对象,您可以使用标准的双下划线语法来遍历关系:
Pizza.objects.filter(toppings__name='cheese')
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1014 次 |
| 最近记录: |