![](/img/trans.png)
[英]Python Django ORM select custom DB for raw query by session variable
[英]Shorten a Python Django DB query
我们有E
和U
模型之间的m2m关系:
class E(models.Model):
us = models.ManyToManyField('U', related_name='events', symmetrical=False)
class U(models.Model):
pass
现在我们要删除pk = 2的U的所有链接。
我写了这段代码: U.events.through.objects.filter(u=2).delete()
。
可以缩短/简化此代码吗?
您可以执行以下操作:
U.objects.get(pk=2).events.clear()
Django文档中有一些有用的示例:
https://docs.djangoproject.com/zh-CN/2.0/topics/db/examples/many_to_many/
附带说明一下,您无需在多对多定义中使用symmetrical=False
。 引用Django文档:
仅用于self的ManyToManyFields的定义。
看到:
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.