【发布时间】:2014-09-15 00:25:05
【问题描述】:
所以我有如下所示的 Django 模型:
class Test(models.Model):
cool_prop = models.CharField()
class Metadata(models.Model):
key = models.CharField()
value = models.CharField()
test = models.ForeignKey(Test)
并且我希望能够根据测试是否包含基于此元数据的键:值对来过滤测试。本质上,我希望能够做到:
tests = Test.objects.all().filter(metadata__key=key and metadata__value=value)
但我不确定如何在 Django 中执行此操作。我研究了 F 和 Q 语句。似乎大多数 Django 操作都允许任何具有所述键的任何元数据和具有所述值的任何元数据的任何测试。但我需要 1 个元数据在键和值中都匹配的测试。
【问题讨论】:
标签: python django django-models foreign-keys matching