Django1.7中文入门教程:[12]自定义admin排列
1、使用admin.site.register(Question)来注册模块,Dango能构建一个默认排列。通常,你想要自定义来排列admin样式。#edit polls/admin.pyfrom django.contrib import adminfrom polls.models import Questionclass QuestionAdmin(admin.ModelAdmin): fields = ['pub_date', 'question_text']admin.site.register(Question, QuestionAdmin
2、通过上面代码的修改,可以看到,下面显示位置的改变。
![Django1.7中文入门教程:[12]自定义admin排列](https://exp-picture.cdn.bcebos.com/92dd32f7dfb2dc191bc5f4af95def4dca1391042.jpg)
3、仅仅两个参数敛财醣沁并不能让人感到映像深刻,但是对很多字段的admin排列来说,选择一种合理的排列方式是非常重要的。我们来再一次修改polls/admin.py文件。你根据这个模式,埒摆缥膂创建一个admin对象模块,放置到admin.site.register()第二个对数。#edit polls/admin.pyfrom django.contrib import adminfrom polls.models import Questionclass QuestionAdmin(admin.ModelAdmin): fieldsets = [ (None, {'fields':['question_text']}), ('Date information',{'fields':['pub_date']}) ]admin.site.register(Question, QuestionAdmin)
![Django1.7中文入门教程:[12]自定义admin排列](https://exp-picture.cdn.bcebos.com/d2987775f2c4ec99b9aaabb5c3fe1e425c6b0742.jpg)
4、fieldsets的每个元组里面的第一个参数,是控件标题。就像下面的:Date information.
![Django1.7中文入门教程:[12]自定义admin排列](https://exp-picture.cdn.bcebos.com/e9a4f2eeadbcbe2faa99e9ac54dae43b3a867842.jpg)
5、Django提供了一个"collapse"类来显示或隐藏一个控件,初始为收缩状态。如果有一个很长的列表,这个功能就非常有用。#edit polls/admin.pyfrom django.contrib import adminfrom polls.models import Questionclass QuestionAdmin(admin.ModelAdmin): fieldsets = [ (None, {'fields':['question_text']}), ('Date information',{'fields':['pub_date'],'classes':['collapse']}) ]admin.site.register(Question, QuestionAdmin)
![Django1.7中文入门教程:[12]自定义admin排列](https://exp-picture.cdn.bcebos.com/974a2f21056104a3a9002c1a63d7592ae2ef6b42.jpg)
6、修改后,打开网页,你就可以看到多了一个按钮。
![Django1.7中文入门教程:[12]自定义admin排列](https://exp-picture.cdn.bcebos.com/988e1c532f632385eadc4d25cce833e038725d42.jpg)