一.request请求
拿请求的方法:request.method()
拿请求的路径:request.path()
Django封装的request方法可以通过上面的方法拿到它相关的所有的信息。
补充知识:startswith ---检查字符串以什么开头。
endswith----------检查字符串以什么结尾。
二.上传文件
1.model中的方法
(1).声明文件的数据用:models.FilField()
(2).声明图片的数据用:models.ImageField(upload_to="上传文件的路径")
2.在项目中新建media文件夹
3.在setting中配置资源上传的路径
setting文件路径的设置.png
注意:
(1)
MEDIA_ROOT:配置的是上传资源的路径。
models.ImageField(upload_to="上传文件的路径")---这个的路径就会放在上面的文件夹下面。
(2)
MEDIA_URL:配置静态资源的路径。
4.在url中的urlpatters中配置静态资源的路径。
在列表的后面加上:
- static(settings.MEDIA_URL, document_root=settings.MEDIA_ROOT)
意义:处理静态资源,
setting是导入的方法:可以用它去读取我的资源的路径。
document_root=settings.MEDIA_ROOT----这句话就是告诉程序我资源的根路径在settings.MEDIA_ROOT。
document_root:表示资源的根路径。
作用:
你可以请求MEDIA_URL下的所有的静态的资源。
三.更换admin的样式(第三方库的实现)
意义:可以实现响应式的布局,一句话就是可以适配屏幕的宽度。
(1)pip install django-jet (装上这个三方的库)
(2)在setting 的INSTALLED_APPS列表里的admin上面加"jet"
(3)在url中加: path('jet/', include('jet.urls', 'jet'))
四.生成文件的唯一标示符
1.用 from uuid import uuid1 这模块中这个方法
(1)生成随机唯一的,可以用来当做文件的名字。
2.用哈希摘要给文件取名字。
详解---前面文章hashilb文章。
五.异步请求、局部刷新(Ajax,Json)
1.Asynchronous-----JavaScript---and---XML
两个异构系统之间可以通过XML来传输数据。
XML:纯文本数据。
异步请求:不中断用户的体验,偷偷的给服务器发请求拿数据。
局部刷新:不刷新整个页面,只是属性一小部分。
2.Json写的更加简洁。
本质就是:通过jQuery对象的getjSon方法发起Ajax请求:
$.getJSON(点击的URL,(json)=>{
点击url需要执行的函数体
})
六.截流
不让用户过于频繁的操作页面,给他一个限制的时间的操作,如果过于频繁的点击,那么页面什么都不做,并告诉用户过于频繁。
七.登陆页面和验证码。
1.登陆页面判断request.method的类型
if request.method=="GET":
这个是请求数据的就渲染登陆页面
if request.method=="POST":
这个是提交数据的操作,可以用于写注册的view模型和页面。
八.用户注册的模型
(1)model中写相关的类
(2)写出相关的注册的属性
(3)生成迁移
(4)执行迁移
(5)在admin中写处要在后台里显示的类,便于在后台中进行管理。
(6)注册模型:
admin.site.register(写模型的类,admin中写的显示管理此类的类)
网友评论