Django框架admin后台管理和用户端静态文件

一、admin后台管理

django自带admin组件,也可以用第三方的Xadmin组件(有很多bug)

1. 如何使用

1.去应用下的admin.py中注册你想要管理的模型类。

2.要想登陆到后台管理,必须是超级用户,需要管理员用户root权限。所以需要用createsuperuser创建一个超级用户先。

特点:

1.admin会自动给所有的注册了的模型表加一个s后缀。

2.admin会自动给注册了的模型表自动生成增删改查四条url。

原理:路由分发

url(r'^admin/', admin.site.urls)

举例:

查 http://127.0.0.1:8000/admin/app01/userinfo/  
改 http://127.0.0.1:8000/admin/app01/userinfo/3/change/ 
删 http://127.0.0.1:8000/admin/app01/userinfo/3/delete/ 
增 http://127.0.0.1:8000/admin/app01/userinfo/add/ 

查 http://127.0.0.1:8000/admin/app01/tag/  
改 http://127.0.0.1:8000/admin/app01/tag/3/change/ 
删 http://127.0.0.1:8000/admin/app01/tag/3/delete/ 
增 http://127.0.0.1:8000/admin/app01/tag/add/ 

2. 路由分发的本质

# settings
urlpatterns = [
	url(r'^index_1_1/',(['''这里可以放很多url'''],None,None)),
	url(r'^index/',([
    	url(r'^index_1/',([
        	url(r'^index_1_1/',([],None,None)),
        	url(r'^index_1_2/',index2),
        	url(r'^index_1_3/',index1),
    	],None,None)),
    	url(r'^index_2/',index2),
	],None,None)),
]

二、用户上传的静态文件的展示

1. media配置

能够存放用户上传的文件

2. 手动开设media接口

# settings

# media配置  能够将用户上传的所有的文件都统一指定的文件夹下
MEDIA_ROOT = os.path.join(BASE_DIR,'media')
# 谨慎操作
# MEDIA_ROOT = os.path.join(BASE_DIR,'app01')

三、图片防盗链

通过判断当前请求之前的所在地址来验证。

如果是本网站,那么正常访问;一旦不是本网站的直接禁止。

可以在请求头里面看:

referer:表示你从哪儿来的

user-agent:标识你是否是一个浏览器

posted @ 2019-12-10 21:59  Donner  阅读(846)  评论(0编辑  收藏  举报