zoukankan      html  css  js  c++  java
  • 建立django项目的完整流程

    简单的django登录项目
    
    1、首先建立工程,建立工程请参照:https://www.cnblogs.com/effortsing/p/10394511.html
    
    2、在Firstdjango工程项目中手工创建一个文件名为static
    
    
    3、配置静态目录
    
    在setting.py中找到STATIC_URL配置如下:
    
    STATIC_URL = '/static/'
    STATICFILES_DIRS = (
      os.path.join(BASE_DIR,"static"),
    )
    
    
    4、添加APP包名(项目名称)
    
    在setting.py中找到INSTALLED_APPS添加app的包名(app也就是项目名称)
    
    INSTALLED_APPS = [
        'django.contrib.admin',
        'django.contrib.auth',
        'django.contrib.contenttypes',
        'django.contrib.sessions',
        'django.contrib.messages',
        'django.contrib.staticfiles',
        'Firstdjango',            #新添加的APP名(项目名称)
    ]
    
    
    5、设置禁止CSRF校验
    
    在setting.py中配置:设置禁止CSRF校验(注释掉django.middleware.csrf.CsrfViewMiddleware'
    MIDDLEWARE = [
        'django.middleware.security.SecurityMiddleware',
        'django.contrib.sessions.middleware.SessionMiddleware',
        'django.middleware.common.CommonMiddleware',
        #'django.middleware.csrf.CsrfViewMiddleware',
        'django.contrib.auth.middleware.AuthenticationMiddleware',
        'django.contrib.messages.middleware.MessageMiddleware',
        'django.middleware.clickjacking.XFrameOptionsMiddleware',
    ]
    
    6、下载bootsrtap代码(http://www.bootcss.com/),下载后解压放在project下新创建的static目录下。
    
    7、下载dashboard.css放在static/bootstrap/css/目录下。(找不到也没关系)
    
    8、下载jquery放在static/bootstrap/js/目录下。         (找不到也没关系)
    
    
    9、在templates里新建一个名字为login.html的文件,添加内容如下:
    
    <!DOCTYPE html>
    <html lang="en">
    <head>
        <meta charset="UTF-8">
        <title>login</title>
        <link rel="stylesheet" href="/static/bootstrap.css">
    </head>
    <body>
    
    <form class="form-horizontal" action="/login/" method="post">
      <div class="form-group">
        <label for="inputEmail3" class="col-sm-3 control-label">邮箱</label>
        <div class="col-sm-2">
          <input type="email" name="email"  class="form-control" id="inputEmail3" placeholder="Email">
        </div>
      </div>
      <div class="form-group">
        <label for="inputPassword3" class="col-sm-3 control-label">密码</label>
        <div class="col-sm-2">
          <input type="password" name="pwd"  class="form-control" id="inputPassword3" placeholder="Password">
        </div>
      </div>
      <div class="form-group">
        <div class="col-sm-offset-3 col-sm-2">
          <button type="submit" class="btn btn-default">登录</button>
            <p style="color: red">{{ error_msg }}</p>
        </div>
      </div>
    </form>
    
    </body>
    </html>
    
    
    10、然后在Firstdjango目录中找到urls.py脚本文件,用下面的代码代替urls.py脚本里面的内容:
    
    from django.conf.urls import url
    from .import views
    urlpatterns=[
        #下面代码是本例添加的路由方法与正则表达式的映射
        url(r'^login/$',views.login),
    ]
    
    
    11、在工程的Firstdjango目录中建立一个views.py视图函数脚本文件,然后在views.py文件中添加如下内容:
    
    from django.shortcuts import HttpResponse  #返回一个指定的字符串时
    from django.shortcuts import render   #返回一个HTML文件
    from django.shortcuts import redirect  #跳转到其他网页
    from django.views.decorators.csrf import csrf_exempt
    
    #禁止CSRF校验
    @csrf_exempt
    def login(request):
        error_msg = ''    #定一个变量为空   login.html 中加入一个空的p标签内容为这个变量
        if request.method == 'POST':        # form表单的模式是POST请求,如果提交就走这个流程
            email = request.POST.get('email')
            pwd = request.POST.get('pwd')
            # print(email, pwd)
            if email=='13893@qq.com' and pwd =='123':  #假设账户和密码是正确的,需要跳转到主页上去(假如说百度)
                return redirect('https://www.baidu.com')
            else:
                error_msg='邮箱或密码错误'    #等账户或者密码错误是给这个变量赋值
        return render(request,'stu_crm/login.html',{'error_msg':error_msg})   # 第一次链接url输入网址是get请求   #并且输出这个变量
    
    
    注意,返回html的路径为'stu_crm/login.html'
    
    
    12、启动django工程
    
    
    13、浏览器访问
    
    http://127.0.0.1:8000/login
    
    输入正确账号密码就会跳转到百度,如下图所示:
    
    
    参照文档:
    
    https://www.cnblogs.com/clbao/p/9708900.html
     
  • 相关阅读:
    java 在线网络考试系统源码 springboot mybaits vue.js 前后分离跨域
    springboot 整合flowable 项目源码 mybiats vue.js 前后分离 跨域
    flowable Springboot vue.js 前后分离 跨域 有代码生成器 工作流
    Flowable 工作流 Springboot vue.js 前后分离 跨域 有代码生成器
    java 企业 网站源码 后台 springmvc SSM 前台 静态化 代码生成器
    java 进销存 商户管理 系统 管理 库存管理 销售报表springmvc SSM项目
    基于FPGA的电子计算器设计(中)
    基于FPGA的电子计算器设计(上)
    FPGA零基础学习:SPI 协议驱动设计
    Signal tap 逻辑分析仪使用教程
  • 原文地址:https://www.cnblogs.com/effortsing/p/10404949.html
Copyright © 2011-2022 走看看