Django:模块的引用合集

Django中的引用

 

import random
from io import BytesIO    # 用于内存,可以生成文件句柄,存放在内存中
from PIL import Image, ImageDraw, ImageFont #用于生成图片 from django.contrib import auth # 用户认证组件中 from django.db.models import Q #查询 from django.http import JsonResponse # ajax请求中,返回给前端不需要再序列化,对方接受也不需要反序列化 from django.shortcuts import render, HttpResponse, redirect # django中的响应类型 from django.urls import reverse # 重定向中的反向解析(别名) from django.views import View # 视图函数中写类,需要继承的类

from app01.form import UserModelForm # form的引用,用于校验数据,定义规则 from app01.models import UserInfo # 视图函数中要引用模型

 

FBV装饰器:

from django.contrib.auth.decorators import login_required   # 装饰器,用于用户是否认证

@login_required   #只需要在FBV 视图函数上面添加即可,用户必须登录了才能够访问
def customers(request): # 要加认证的函数,
  ...

LOGIN_URL="/login/"    #在setting中设置自己的路径,否则会默认走 account/login  

 

 CBV装饰器:

#首先写一个用于登录认证的装饰器函数
def
login_require(func): def inner(request): if not request.user.id: # 判断用户是否登录过 return redirect("/login/") else: return func(request) return inner


补充 ...

 

 

只有get请求的时候才有必要加 装饰器或中间件 来认证是否登录过。

 

posted @ 2018-11-09 16:06  葡萄想柠檬  Views(545)  Comments(0)    收藏  举报
目录代码