自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

Ayhan_huang的博客

Die Nacht ist dunkel und voller Schrecken

  • 博客(12)
  • 收藏
  • 关注

原创 基于Django实现RBAC权限管理

概述RBAC(Role-Based Access Control,基于角色的访问控制),通过角色绑定权限,然后给用户划分角色。在web应用中,可以将权限理解为url,一个权限对应一个url。在实际应用中,url是依附在菜单下的,比如一个简单的生产企业管理系统,菜单可以大致分为以下几块:制造、资材、生产管理、人事、财务等等。每个菜单下又可以有子菜单,但最终都会指向一个url,点击这个url,通过Dja

2017-09-26 14:03:47 16612 15

原创 saltstack的简单安装和配置

saltstack的简单安装和配置什么是saltstack? SaltStack是一个服务器基础架构集中化管理平台,具备配置管理、远程执行、监控等功能,一般可以理解为简化版的puppet和加强版的func。SaltStack基于Python语言实现,结合轻量级消息队列(ZeroMQ)与Python第三方模块(Pyzmq、PyCrypto、Pyjinjia2、python-msgpack和PyYA

2017-09-25 19:03:41 375

原创 Django中的Form & ModelForm

在web开发中,处理表单是家常便饭,我们当然可以直接在模板中编写原生的html表单,然后在后端进行表单验证,这常常是一项繁琐的工作。Form我们可以通过Django提供了表单功能,来方便表单的处理。下面看一下如何使用:自定义表单类from django import forms # 导入表单模块from django.core.exceptions import ValidationError

2017-09-25 08:37:27 2853 1

原创 Django,再谈json序列化

我们知道JSON字符串是目前流行的数据交换格式,在pyhton中我们通过json模块,将常用的数据类型转化为json字符串。但是,json支持转化的数据类型是有限的。比如,我们通过ORM从数据库查询出的结果,试图通过json序列化:from .models import UserInfodef index(request): user_list = UserInfo.objects.all(

2017-09-20 19:48:49 6350

原创 Django 信号

Django 信号Django提供一种信号机制,一些动作发生时,会触发信号,然后监听了这个信号的函数就会被执行。比如,实现数据库每写入一条数据,写一条日志。要实现这个需求,可以通过全局的中间件来做,但是利用Django的信号机制会更灵活。中间件只作用在请求进来和响应出去时,而信号的散布范围更广。我们先看看Django内置了哪些信号:Model signalspre_init

2017-09-20 18:56:56 1436

原创 Django 缓存

Django缓存简介为什么要用缓存?我们知道,在Django中,请求到达视图后,视图会从数据库取数据放到模板中进行动态渲染,渲染后的结果就是用户看到的html页面。但是,如果每次请求都从数据库取数据并渲染,将极大降低性能,不仅服务器压力大,而且客户端也无法即时获得响应。如果能将渲染后的结果放到速度更快的缓存中,每次有请求过来,先检查缓存中是否有对应的资源,如果有,直接从缓存中取出来返回响应,节省取数

2017-09-20 16:38:08 2646

原创 Django(二) 路由和视图

路由定义路由是客户端访问的url路径与视图函数间的一一映射关系。Django中的路由关系在urls.py文件中,基本格式如下:urlpatterns = [ url(regex,view, kwargs=None, name=None),]参数说明: regex: 匹配url路径的正则表达式,比如r'^login/', 匹配以login/开头的路径,当你在浏览器地址栏输入http://1

2017-09-20 08:39:02 1269

原创 Cookie & Session

Http协议和Cookie请求和响应Http协议用于客户端与服务端的通信,客户端发出请求,服务端返回响应。下面我们以访问https://www.sogou.com/搜狗首页为例,来看看请求报文和响应报文: 下面是从客户端访问服务器的请求报文的截取内容:GET / HTTP/1.1Host: www.sogou.comConnection: keep-aliveCache-

2017-09-19 17:03:54 658

原创 git 命令总结

git, 流行的分布式版本控制工具,全平台支持。在windows下,打开git bash窗口,我们就可以像在linux终端中一样,方便的输入命令。git结构git分为工作区和版本库;工作区包括未修改和已修改(red) ;版本库包括暂存(green)和分支 图片来源于 武Sir初始化git init 在当前目录初始化gitgit add /./* 添加文件/当前目录所有文件到暂存区git

2017-09-19 14:58:15 534

原创 django中的CSRF

CSRF,跨站请求伪造,是django内置的一个中间件安全机制,相信大家都碰到过因为它而导致POST请求报错的情况,最简单的解决方案是在form中加入 csrf_token:<form action="" method="post"> {% csrf_token %} <input type="text" name="name"> ......</form>那么对于ajax

2017-09-18 20:04:12 492

原创 Django(五)中间件

一次请求的生命周期我们先看客户端发起一次http请求的流程 注:django框架不包括socket, 要借助图中的两个模块来实现socket,进行客户端和服务端通信。wsgi性能较弱,一般测试开发用;企业中用uwsgi,性能强,并发好。中间件从图上可知,请求在到达视图之前,会依次执行中间件,视图返回的响应,依次倒序执行中间件。 中间件的本质是一个个的类,类中定义了一些方法。在django项目

2017-09-18 13:35:46 1194

原创 AJAX异步请求

准备知识在学习AJAX前,我们先了解一下JSON和XMLJSON定义 JSON(JavaScript Object Notation, JS对象标记),是一种轻量级的数据交换格式。 它基于 ECMAScript (w3c制定的JS规范)的一个子集,采用完全独立于编程语言的文本格式来存储和表示数据。 简洁和清晰的层次结构使得 JSON 成为理想的数据交换语言。 易于人阅读和编写,同

2017-09-13 11:14:28 150494 2

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除