Django-- CRM1客户建表与装饰器】的更多相关文章

一.CRM项目(1) 引入三个表:用户表,客户表,校区表,班级表,梳理逻辑关系并迁移数据库,生成表. 使用admin插入数据,admin是Django提供的web形式的后台数据管理页面,它是和用户认证组件相通的,使用超级用户即可登录admin后台,并管理自己的数据库. 做出全部客户列表页面和我的客户列表页面. 二.装饰器 在python中,装饰器以及前面讲到的迭代器,生成器都是十二分重要的高级函数.要想理解装饰器,首先要掌握以下几点准备知识: 1.准备一:回顾并理解作用域的相关知识 2.准备二:…
浅谈Django的中间件 与Python的装饰器 一.原理 1.装饰器是Python的一种语法应用,利用闭包的原理去更改一个函数的功能,即让一个函数执行之前先到另外一个函数中执行其他需求语句,在执行该函数.在开发项目中,通常使用装饰器来管理权限,登录等等,配上Python的 @ 语法糖,轻松实现代码的重用性和低耦合性. 2.而Django中的中间件是利用面向切面的编程思想,对Django服务器访问过程中间进行干预. 是一个轻量级.底层的插件系统,可以介入Django的请求和响应处理过程,修改Dj…
FBV模式装饰器: 普通函数的装饰器(语法糖@) views.py from django.shortcuts import render def wrapper(f): def inner(*args,**kwargs): print("before") ret=f(*args,**kwargs) print("after") return ret return inner @wrapper def index(request): return render(re…
备忘 def auth(func): def inner(request,*args,**kwargs): u = request.COOKIES.get('username111') if not u: return redirect('/login/') print("call index()") return func(request,*args,**kwargs) return inner #FBV @auth def index(request): #带签名的cookie o…
1. 使用装饰器装饰FBV FBV本身就是一个函数,所以和给普通的函数加装饰器无差: def wrapper(func): def inner(*args, **kwargs): start_time = time.time() ret = func(*args, **kwargs) end_time = time.time() print("used:", end_time-start_time) return ret return inner @wrapper def add_cl…
当我们对某个表需要在创建时,给他绑定一个随机的id,那么我们怎么做呢? 当创建一个用户时执行的为save方法,所以通过下面的 super(UserInfo, self).save(*args, **kwargs)来将生成的md5值赋给这条创建的记录. import hashlib from django.db import models class UserInfo(models.Model): username = models.CharField("用户名", max_length…
1.安装mongodb的py模块包 pip install mongoengine 同时安装了mongoengine.pymongo 2.在项目配置文件settings.py中配置 from mongoengine import connect connect('dbname1', host='127.0.0.1', port=27017, alias='default') #connect('数据库名',host='host',port='port',alias='别名'),还可以设置其他参数…
FBV django CBV & FBV - FBV function basic view a. urls 设置 urls(r'^test.html$', views.test) b. views写法 def test(request): return ... c. FBV添加装饰器 - 定义装饰器 def wrapper(func): def inner(*args, **kwargs): return func(*args, **kwargs) return inner - 使用装饰器方法…
Django提供了几个可以应用于视图以支持各种HTTP特性的装饰器 Allowed HTTP django.views.decorators.http里的装饰器可以根据请求方法限制对视图的访问. require_http_methods 接收特定的HTPP 请求方法 from django.views.decorators.http import require_http_methods @require_http_methods(["GET", "POST"])…
方法一 给指定方法加 from django.utils.decorators import method_decorator class xx(View): @method_decorator(装饰器方法) def post(self, request): ... 方法二 给dispatch加 @method_decorator(装饰器方法) def dispatch(self, request, *args, **kwargs): ... 方法三 给类加 from django.utils.…