Django 做个小后台,细节在完善一点点,滚雪球学 Python 第三阶段
橡皮擦,一个逗趣的互联网高级网虫。新的系列,让我们一起进入 Django 世界。
三、Django 后台完善
3.1 列表页展示内容修改
在上一篇博客实现了列表数据展示,但是只显示了一列,并且列标题为英文,本篇博客首先解决该问题。
 
 修改 blog 文件夹内部的 admin.py 文件,代码如下:
list_display 属性值对应的列表项,都是 models.py 代码中的内容,要对应好,否则会出现下述类似错误:
执行保存代码,Django 会自动进行加载,刷新浏览器即可看到效果。
 
 代码保存即重新加载输入数据如下:
3.2 列表自定义列实现
除了 models.py 中定义的属性,可以在 list_display  进行调用,还可以自行创建列供其使用。先修改 models.py 中的内容:
同步修改 admin.py 中的内容,在 list_display 中新增 introduction:
运行代码,效果图如下:
 
 3.3 列表搜索实现
实现列表检索,需要增加的代码也非常简单,在 admin.py 中的类 BlogAdmin 中增加如下代码:
 
 3.4 只读字段
在 Django 中,可以设置某些字段不被修改,只读。例如,我们将发布时间设置为只读字段。修改 admin.py 文件中的代码:
 
 3.5 ModelAdmin 常用的属性和方法
本篇博客主要介绍的是 BlogAdmin(admin.ModelAdmin) 这个类,该类继承自 ModelAdmin。
常见的属性如下
- list_display:列表显示字段筛选;
- search_fields:搜索字段筛选;
- readonly_fields:设置只读字段;
- ordering:排序字段;
- fields:表单页显示字段;
- exclude:表单页不显示字段;
- list_filter:边栏筛选;
- list_editable:列表页可编辑字段设置;
- list_per_page:列表页显示条数;
- empty_value_display:空数据替换文字。
常见的方法如下
- save_model():保存;
- delete_model():删除;
- get_search_results():自定义检索;
- get_list_display():对- list_display属性的扩展;
- get_readonly_fields():对- readonly_fields属性的扩展;
- get_search_fields():对- search_fields属性的扩展;
上述属性和方法都会在后续的博客中进行学习,除了以上内容外,Django 还有更多的 QuerySet 技巧,这些都留给后面的文章吧。
博主 ID:梦想橡皮擦,希望大家<font color="red">点赞</font>、<font color="red">评论</font>、<font color="red">收藏</font>。
版权声明: 本文为 InfoQ 作者【梦想橡皮擦】的原创文章。
原文链接:【http://xie.infoq.cn/article/02c28663f9b71c71c348da83d】。文章转载请联系作者。












 
    
评论