在运行时指定Django查询过滤器

Chr*_* W. 3 python django runtime django-queryset

如何在运行时指定任意Django查询过滤器?

通常一个人使用像这样的过滤器......

query_set = MyModel.objects.filter(name__iexact='foobar')
Run Code Online (Sandbox Code Playgroud)

但是如果我在字符串中包含查询过滤器说明符怎么办?

query_specifier = "name_iexact='foobar'"
query_set = MyModel.objects.filter(query_specifier) # <-- This doesn't work; How can I do this?
Run Code Online (Sandbox Code Playgroud)

Dan*_*een 9

query_specifier = {
    'name__iexact': 'foobar'
}
query_set = MyModel.objects.filter(**query_specifier)
Run Code Online (Sandbox Code Playgroud)