【发布时间】:2018-10-08 13:16:01
【问题描述】:
我有这个模型:
class Task(MPTTModel, TimeStampedModel, StartFinishModel):
name = models.CharField(max_length=256)
start_after_end = models.ManyToManyField('self',
related_name='s2e_relation',
blank=True)
#s2e means that task can't start before related tasks end
如何获取在此任务结束之前无法开始的所有任务以及必须在此任务开始之前结束的所有任务。
Let's say 1 -> 2 -> 3
我有 id 2。我想找到3 和另一个查询1。
要找到 3,我可以使用 Task.objects.get(id = 2).start_after_end.all()
我怎样才能找到1?
更新 1
实际上找出更大的问题 - 如果我选择 2 related to 1 - 1 立即更改与 1 is related to 2 的关系
【问题讨论】:
-
你需要使关系不对称。
-
@Willem Van Onsem 你是什么意思?