码迷,mamicode.com
首页 > 其他好文 > 详细

django如何在 search_fields和list_filter 中包含外键字段

时间:2020-04-01 14:30:08      阅读:103      评论:0      收藏:0      [点我收藏+]

标签:any   lock   har   model   ror   models   invalid   lookup   外键   

django如何在 search_fields和list_filter 中包含外键字段

我们知道在 admin.py 中定义 search_fields 可以控制在后台管理界面中能够搜索的字段。

但是,当 search_fields 包含外键字段时,此时进行搜索会报错:

TypeError at /admin/hello/foo/

Related Field has invalid lookup: icontains

解决的办法是修改 search_fields 中的外键字段名称。

将 search_fields 中的外键字段改为 foreign_key__related_fieldname 这种形式就可以了。 这种用法适用于 ForeignKey 及 ManyToManyField 。

models.py

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

django如何在 search_fields和list_filter 中包含外键字段

标签:any   lock   har   model   ror   models   invalid   lookup   外键   

原文地址:https://www.cnblogs.com/demiao/p/12612279.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!