Django 请求拦截器

Django 请求拦截器

前两天再弄前后端分离的token验证部分,也是很轻松的实现了,这里也是要好好感谢下自己,谢谢。回归正题,实现了header里的token验证,所以我想在django后端的每个请求的视图函数都验证一下,本来我是想写个装饰器,这样也是尽可能的实现了代码的重用性,但是这样如果视图函数多的话也是有点无聊的。就想起我室友学java spring开发的时候用的一个请求拦截器,它能拦截每个请求并做统一的验证,这个拦截器才是我真正想要的。所以就去问了一下度娘。度娘反手就是一个网址给我瞅了两眼,就再结合一下vue前段项目就有了这片博客。

Read More

Django 后端图片优化处理

Django 后端图片优化处理

在我的LightBlog博客上的头像上传前端是借用cropper——一款优秀的jquery插件,在之前的博客也是介绍过,可以去了解一下《cropper实现头像裁剪上传》.回归正题,我前端通过cropper上传裁剪好的图片到后端接收和保存,但是后端接收道德往往是较大的图片,如果不经过一定的压缩处理就会造成页面刷新速度慢和流量浪费等情况,所以我们可以在上传图片的时候生成该图片的缩略图。一种方法可以是借助pillow这个图片处理库在接收后的视图函数中进行压缩和保存,这种简单易并且容易理解,所以这里就不介绍了。这里介绍的是第二种方法——django-imagekit第三方库

Read More

前后端分离

前后端分离

在前几年的web服务搭建基本都是前后端一起的,就是前端的界面也是后端渲染出来的,这样的话前后端耦合度高,可能只适合于小项目,不容易管理。所以后来的大项目都是使用的前后端分离,这样的话前后端耦合度低,易于管理,提高了拓展性和性能。当然前后端的好处不可能只有这么一点,这里就不多加阐述了。本篇博客也会不断更新,用于解决一些前后端分离的一些不懂的地方。

Read More

LightBlog-Django博客上线

LightBlog 博客

LightBlog博客系统是我用了近四五周写的一个基于Django的博客系统,基本的功能也是正常博客所拥有的,如用户方面有登录注册,修改密码,个人的首页,个人信息修改,头像剪切上传,个人博客页面,个人博客的编写(基于markdown)。博客方面:用于可以为自己写的博客加栏目分类,博客上传后也是展示在首页,博客也是可以在线修改,有博客点赞功能和简单评论功能等等。前端页面是用一个很小的前端框架搭建——layui。由于该博客有好的方面也有带改进的方面,所以这里就不多一一阐述,该这篇博客也是会一直置顶,更改。欢迎来踩踩(别踩坏了)——LightBlog博客

Read More

Webpack 介绍和使用

Webpack的简单介绍

自从上次搭建了一个博客系统后也是对接下来的改进有点迷茫,所以就开始学习一下前端技术——Vue。至于Vue的一些组件的介绍就不说了,就简单说说前端工程化也就是做项目所用到的技术——Webpack。

Read More

Django Celery框架

分布式任务与定时任务

网站的并发编程主要处理网站的业务流程,根据网站请求到响应的过程分析,Django处理用户请求主要在视图中执行,视图主要是一个函数,而且是单线程的,没错是单线程的。所以在遇到繁琐的数据读写和高密度的计算,往往会造成响应时间过长,在网页上出现卡死的情况,不利于用户体验,为了解决这样的情况,我们可以在视图中加入分布式任务,让它处理一些耗时的业务流程,从而缩短用户响应时间。

Read More

Django 自定义模板标签

自定义模板标签

在Django中模板中的for和if就是默认的模板标签,为了更为复杂的操作,Django还允许开发自定义的模板标签,共有三种自定义模板标签,如simple_tag、inclusion_tag和assignment_tag。

Read More

Python-redis

redis

redis 是一个key-value存储系统。和Memcached类似,它支持存储的value类型相对更多,包括string(字符串)、list(链表)、set(集合)、zset(有序集合)和hash(哈希)。这些数据都支持push/pop、add/remove及取交集并集和差集及更丰富的操作,而且这些操作都是原子性的。在此基础上,redis支持各种不同方式的排序。与memcached一样,为了保证效率,数据都是缓存在内存中。区别是redis周期性的把更新数据写入磁盘或者把修改操作写入追加的记录文件中,并且在此基础上实现master-slave(主从)同步。

Read More