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、通过上面代码的修改,可以看到,下面显示位置的改变。
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)
4、fieldsets的每个元组里面的第一个参数,是控件标题。就像下面的:Date information.
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)
6、修改后,打开网页,你就可以看到多了一个按钮。