Django 使用字段名变量调用筛选器

Django 使用字段名变量调用筛选器,django,django-models,django-queryset,Django,Django Models,Django Queryset,有没有一种方法可以在字段名之一是变量的queryset上调用filter 例如,我有一些类似于: models.py class Playlist(models.Model): video = ... field_name = 'video' Playlist.objects.filter(field_name=v) 视图.py class Playlist(models.Model): video = ... field_name = 'video' Playlist.o

有没有一种方法可以在字段名之一是变量的queryset上调用filter

例如,我有一些类似于:

models.py

class Playlist(models.Model):
    video = ...
field_name = 'video'
Playlist.objects.filter(field_name=v)
视图.py

class Playlist(models.Model):
    video = ...
field_name = 'video'
Playlist.objects.filter(field_name=v)

当然,这会导致一个错误,
字段名
不是一个可以过滤
播放列表
的属性。

Playlist.objects.filter(**{field\u name:v})
使用带有
图标的字段名字符串

试试这个

field_name = 'video'
field_name_icontains = field_name + '__icontains'
Playlist.objects.filter(**{field_name_icontains: v})

普通,我需要互联网点!如何将uu icontains与字段名称一起使用?它给出了一个errorTry:field_name='video__icontains',它对meIs有效有没有一种方法可以将模型名作为变量传递到查询集中?例如,在像
var\u duty\u cond=DutyHdr.objects.get(duty\u hdr\u component=varMainDutyType.duty\u main
这样的查询集中,我如何传递变量
varDutyHdr
来代替模型
DutyHdr