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 字段
