在 Django 中,如何使用動態字段查找過濾 QuerySet?

| | | | | | | | | |

給定一個類:

from django.db import models class Person(models.Model): name = models.CharField(max_length=20) 

是否有可能,如果有的話,如何擁有一個基於動態參數進行過濾的 QuerySet?例如:

 # 而不是:Person.objects.filter(name__startswith="B") # ... 和:Person.objects.filter(name__endswith="B") # .. . 有什麼辦法,給定: filter_by = "{0}__{1}".format("name", "startswith") filter_value = "B" # ... 你可以運行相當於這個嗎? Person.objects.filter(filter_by=filter_value) # ... 這將引發異常,因為 `filter_by` 不是 # `Person` 的屬性。