Django1.7中文入门教程:[12]自定义admin排列
1、使用admin.site.register(Question)来注册模块,Dango能构建一个默认排列。通常,你想要自定义来排列admin样式。
#edit polls/admin.py
from django.contrib import admin
from polls.models import Question
class 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.py
from django.contrib import admin
from polls.models import Question
class 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.py
from django.contrib import admin
from polls.models import Question
class 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)