django框架基础-admin-长期维护

###############  admin基本认识    ###############

对admin的基本认识
1,就是一个app,嵌入到了django里面,你可以在settings中看到
2,就是一个web后台管理工具,使用它可以更加的方便
3,通常我们在生成项目时会在 urls.py 中自动设置好url访问路径
4,启动开发服务器,然后在浏览器中访问 http://127.0.0.1:8000/admin/
5,你通过命令 python manage.py createsuperuser 来创建超级用户
6,使用的时候先注册数据模型:admin.site.register(models.UserInfo)
7,复杂的,需要定制的,需要利用ModelAdmin进行操作

###############  admin的定制功能   ###############

ModelAdmin中提供了大量的可定制功能,如
1,list_display,列表时,定制显示的列。不能放多对多的字段
2,list_display_links,列表时,定制列可以点击跳转到详情页面,
3,list_filter,列表时,定制右侧快速筛选。
4,list_select_related,列表时,连表查询是否自动select_related
5,list_editable,列表时,可以编辑的列 
6,search_fields,列表时,模糊搜索的功能
7,date_hierarchy,列表时,对Date和DateTime类型进行搜索
8,inlines,详细页面,如果有外键,那么详细页面可以进行动态增加和删除
9,action,列表时,定制action中的操作
10,定制HTML模板
11,raw_id_fields,详细页面,针对FK和M2M字段变成以Input框形式
12,fields,详细页面时,显示字段的字段
13,exclude,详细页面时,排除的字段
14,readonly_fields,详细页面时,只读字段
15,fieldsets,详细页面时,使用fieldsets标签对数据进行分割显示
16,详细页面时,M2M显示时,数据移动选择
17,ordering,列表时,数据排序规则
18,radio_fields,详细页面时,使用radio显示选项
19,form = ModelForm,用于定制用户请求时候表单验证
20,empty_value_display = "列数据为空时,显示默认值"

 #############

############### admin源码分析    ###############

循环加载执行所有已经注册的app中的admin.py文件

def autodiscover():
    autodiscover_modules('admin', register_to=site)

########### 

执行register方法,有两个参数,第一个参数必填,第二个参数是自定义的类(要继承admin.modeladmin),可以写,不写就是默认的模型功能,

admin.site.register(Book, BookAdmin) 
admin.site.register(Publish)

############

###############  admin    ###############

###############  admin    ###############

猜你喜欢

转载自www.cnblogs.com/andy0816/p/12157042.html