• Django第一个测试


    上一篇我们已经搭好了django环境,接下来创建一个app

    cmd进入我们的工程目录执行命令

    python manage.py startapp web

    项目里已经有了web这个应用文件

    接下来将我们的应用app添加到setting 

     在views.py中添加第一个测试

    from django.http.response import HttpResponse
    
    def Login(request):
        return HttpResponse('This is the first test')

    我们访问127.0.0.1:8000/login,基本的一个原理

    urls中调用Login,这里相当于一个路由,首先执行的是这个path 去找login 映射的是Login方法---->然后HttpResponse返回我们指定内容

     

     然后我们来做一个很low的post接口

    先在templates文件里写一个最简单的登录页

    <!DOCTYPE html>
    <html lang="en">
    <head>
        <meta charset="UTF-8">
        <title>Login</title>
    </head>
    <body>
    <form action="/login/" method="POST">
        <h1>用户名:<input name="username"></h1>
        <h1>密码:<input name="password"></h1>
        <input type="submit" value="登录">
    </form>
    </body>
    </html>

    然后在views定义login方法

    from django.http.response import HttpResponse
    from django.shortcuts import render_to_response
    
    def Login(request):
        if request.method == 'POST':
            usernam = request.POST.get('username') #获取用户提交的username
            return HttpResponse(usernam)
        else:
            return render_to_response('login.html') #当不是post请求时,返回到登录页面

    这里需要设置两个地方

    一个是templates的地址,在setteings中

     另外一个是安全验证的警告,我们先忽略掉,否则会403

    测试一下接口 ,返回200 

     再来一个get

    from django.http.response import HttpResponse
    from django.shortcuts import render_to_response
    import json
    
    def Login(request):
        if request.method == 'POST':
            username = request.POST.get('username') #获取用户提交的username
            return HttpResponse(username)
        elif request.method == 'GET':
            result = {}
            username = request.GET.get('username')
            mobile = request.GET.get('mobile')
            data = request.GET.get('data')
            result['user'] = username
            result['mobileNum'] = mobile
            result['data'] = data
            result = json.dumps(result)
            return HttpResponse(result,content_type= 'application/json;charset=utf-8')
        else:
            return render_to_response('login.html') #当不是post请求时,返回到登录页面

    测试一下

     试试我们刚刚的登录页面,也是可以的

     

  • 相关阅读:
    Apache部署Django项目
    Docker
    常用算法
    Go之基本数据类型
    Go之流程控制
    Go基本使用
    Go安装与Goland破解永久版
    Linux
    详解java中的byte类型
    Linux统计文本中某个字符串出现的次数
  • 原文地址:https://www.cnblogs.com/tongjc-0901/p/12583092.html
Copyright © 2020-2023  润新知