请稍等 ...
×

采纳答案成功!

向帮助你的同学说点啥吧!感谢那些助人为乐的人

list_filter没写user__nick_name也有数据显示

UserProfile为外键时通过list_filter来筛选时不需要user__nick_name也有数据显示(显示为:用户),而外键为course时就必须使用course__name不然什么都不显示。

course中我也写了str的返回值

 def __str__(self):
        # get_字段名_display : 返回CharField中choices的属性值
        # return '{0}({1})'.format(self.name, self.get_degree_display())
        return self.name

UserProfile的str为:

    def __str__(self):
        return self.username

描述有点乱,想问的是通过list_filter进行筛选时为什么UserProfile可以不使用外键的形式–变量名__外键的属性值

正在回答 回答被采纳积分+3

1回答

bobby 2018-12-16 19:25:51

userprofile用在list_filter会显示成https://img1.sycdn.imooc.com//szimg/5c1636070001b08d07800308.jpg 这样 是一个搜索的功能, 如果想要你的外键比如course也成这样你可以 在你的course的adminx中 https://img1.sycdn.imooc.com//szimg/5c16363c0001af3d11800399.jpg 这样设置

0 回复 有任何疑惑可以回复我~
  • 提问者 叮咚Raindrop #1
    还是不行。
    比如:operation这个app,在UserCourse这个model中,使用了Course这个外键。
    operation下面的adminx文件里面UserCourseAdmin使用list_filter = ['user', 'course__name', 'add_time', ]。
    然后我在Course这app的adminx中CourseAdmin也定义了relfield_style = 'fk-ajax'。
    效果还是一样。
    过滤器哪里还是显示为:course 课程名
    回复 有任何疑惑可以回复我~ 2018-12-16 22:14:40
  • bobby 回复 提问者 叮咚Raindrop #2
    过滤器的地方显示的问题 这个是xadmin本身的问题 , 有开发者在xadmin中提过pr解决这个问题,但是作者并没有合并 你可以看看这个pr的源码 https://github.com/sshwsfc/xadmin/pull/328
    回复 有任何疑惑可以回复我~ 2018-12-18 15:04:57
  • 提问者 叮咚Raindrop 回复 bobby #3
    好吧。
    那先这样。
    还以为是自己操作有误导致无法显示。
    谢谢
    回复 有任何疑惑可以回复我~ 2018-12-19 21:44:33

相似问题

登录后可查看更多问答,登录/注册

问题已解决,确定采纳
还有疑问,暂不采纳
意见反馈 帮助中心 APP下载
官方微信