zoukankan      html  css  js  c++  java
  • Django-视图

    一些方法

    View

    from django.views import View
    class register(View):
        def get(self,request):
            pass
        def post(self,request):
            pass

    render

    from django.shortcuts import render
    
    ....
    
    return render(request,'register.html',content)#将数据模板渲染后返回
    HttpResponseForbidden
    from django.http import HttpResponseForbidden
    
    ...
    
    return HttpResponseForbidden('缺少必传参数')
    #用于返回403错误信息

    if not

    if not all(username,password,password2,mobile):
         return HttpResponseForbidden('缺少必传参数')
    #用于判断参数是否接受完全

    保存注册数据

    这里使用了用户模型类中的create_user方法

    # 保存注册数据
    try:
        User.objects.create_user(username=username, password=password, mobile=mobile)
    except DatabaseError:
        return render(request, 'register.html', {'register_errmsg': '注册失败'})

    redirect 重定向  和 reverse 反向解析

    from django.shortcuts import redirect
    from django.urls import reverse
    
    # 案例1
    def my_view(request):
        ...
        return redirect('/index/')
    
    # 案例2
    def my_view(request):
        ...
        return redirect('https://www.baidu.com/')
    
    # 案例3
    def my_view(request):
        ...
        return redirect(reverse('blog:article_list'))#命名空间

    用户登录状态保持

    from django.contrib.auth import login,logout
    
    ...
    
    # 实现状态保持
            login(request, user)
    #退出登录
            logout(request)    

    状态保持 session 数据存储的位置:Redis数据库 配置中指定

     SESSION_ENGINE = "django.contrib.sessions.backends.cache"
     SESSION_CACHE_ALIAS = "session"
  • 相关阅读:
    group having条件找max无记录问题
    Apache Http Server
    Google产品
    AES加密报错Illegal key size
    内网调试微信开发
    试用VSCode
    React的Transaction浅析
    一个webpack,react,less,es6的DEMO
    20151128
    React生命周期浅析
  • 原文地址:https://www.cnblogs.com/xujin247/p/11765855.html
Copyright © 2011-2022 走看看