一、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:标识你是否是一个浏览器