Как в Django фильтровать QuerySet с поиском динамических полей?

| | | | | | | | | |

Учитывая класс:

из класса импорта моделей django.db 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`.