Chinaunix首页 | 论坛 | 博客
  • 博客访问: 21377
  • 博文数量: 4
  • 博客积分: 31
  • 博客等级: 民兵
  • 技术积分: 50
  • 用 户 组: 普通用户
  • 注册时间: 2010-05-25 11:00
文章分类

全部博文(4)

文章存档

2015年(4)

我的朋友

分类: Python/Ruby

2015-11-10 11:29:26

    上节讲到list_display变量,这次讲讲它的类似变量list_display_links,它的值也是个list类型,list的元素也是model的字段名。
   list_display_links变量其实与list_display有一定的关联,它的作用是提供一个超链接,转到form_change页面,就是修改页面。默认情况下,就是list_display变量的第一个元素提供超链接。与list_display变量一样,list_display_links也有对用的一个方法使用,就是get_list_display_links:

点击(此处)折叠或打开

  1. def get_list_display_links(self, request, list_display):
  2.         """
  3.         Return a sequence containing the fields to be displayed as links
  4.         on the changelist. The list_display parameter is the list of fields
  5.         returned by get_list_display().
  6.         """
  7.         if self.list_display_links or not list_display:
  8.             return self.list_display_links
  9.         else:
  10.             # Use only the first item in list_display as link
  11.             return list(list_display)[:1]
在这里你可以重载函数的方式做你想做的。但记住一点,返回的list的所有元素必须在list_display值里或者是一个空的list,要不然会报错的。
    值的注意的是,在实际应用中,可能你还需要另外的超链接来跳转到其他页面,而不是form_change的页面,这个时候,你就需要在前面一节讲到的自定义list_diaplay的元素的方式了,可以像下面的方式写:

点击(此处)折叠或打开

  1. def get_user_dept(self,obj) :
  2.       return 'XXX'
  3. get_report_depts.allow_tags = True
  4. get_report_depts.short_description = u'所属部门'
在list_display里加入get_user_dept。
第4行就不说了,这里说说第3行的意思,allow_tags=True就是解析HTML的格式,默认值是False












阅读(5839) | 评论(0) | 转发(0) |
0

上一篇:Django札记 二:admin的list_display变量

下一篇:没有了

给主人留下些什么吧!~~