Django1.7中文入门教程:[12]自定义admin排列

2025-10-22 20:01:27

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排列

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排列

4、fieldsets的每个元组里面的第一个参数,是控件标题。就像下面的:Date information.

Django1.7中文入门教程:[12]自定义admin排列

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排列

6、修改后,打开网页,你就可以看到多了一个按钮。

Django1.7中文入门教程:[12]自定义admin排列

声明:本网站引用、摘录或转载内容仅供网站访问者交流或参考,不代表本站立场,如存在版权或非法内容,请联系站长删除,联系邮箱:site.kefu@qq.com。
猜你喜欢