说我创建这样一个QuerySet:在t0时刻使用来自另一个QuerySet的查询过滤django QuerySet:可能吗?
q0 = Thing.objects.all()
fq0 = q0.filter(x=y)
。然后我给Thing db添加一些新的东西。这些东西形成查询集:
q1 = Thing.objects.filter(created_gt=t0)
我要生成的查询集:
fq = (q0 | q1).filter(x=y)
而不必知道什么X或Y的。换句话说,我希望能够做这样的事情:
fq1 = q1.filter(query=fq0.query)
fq = fq0 | fq1
这可能吗?手动设置
q1.query = fq0.query
只是设置q1 == fq0
。我见过一些人询问从查询集中提取sql,但这对我没有任何帮助。
大图:缓存fq0,仅通过过滤q1来生成fq。你说得对,这是一个讨厌的解决方案。当你缓存事物时,它变得更加糟糕。幸运的是我找到了更好的解决方案。尽管感谢您的帮助。我喜欢你,但我需要更多的代表。 –
@dmrparthenon你应该回答你的问题与你发现的解决方案,以帮助社区和标记为已解决回答自己的答案。 –