django管理界面admin搜索报错:TypeError: Related Field got invalid lookup: icontains
报错
TypeError: Related Field got invalid lookup: icontains
原因
出错原因是你配置的ModelAdmin类中,元组search_fields中的项不是字符类型。
解决
删除元组search_fields中类型不符的项
参考
附加一个示例:http://stackoverflow.com/questions/24569687/searching-by-related-fields-in-django-admin
[django]如何在 search_fields 中包含外键字段
将 search_fields 中的外键字段改为 foreign_key__related_fieldname
这种形式就可以了。 这种用法适用于 ForeignKey 及 ManyToManyField 。
model
class Hello(models.Model): name = models.CharField(max_length=100) #... class Foo(models.Model): hello = models.ForeignKey(Hello)
admin.py
class FooAdmin(admin.ModelAdmin): search_fields = ('hello__name',) # 搜索 Hello 中的 name 字段