Django开发_20_form表单前后端关联(2)

根据上一篇文章的代码,进一步了解掌握GET,POST的运行机制

一、实例代码

views.py:

def show_reverse(request):
    if request.method == "GET":
        return redirect(reverse("work4:fill"))
    if request.method == "POST":
        hobby = request.POST.get("hobby")
        return redirect(reverse("work4:show", kwargs={"hobby": hobby}))

urls.py:

path("reverse/", show_reverse, name="reverse"),

二、过程分析

根据上一篇文章添加完上述代码后,启动运行

在浏览器网站输入http://127.0.0.1:8000/work4/reverse/

转到urls.py:

转到views.py:

对应网页跳转:

输入爱好,点击提交,实质上是发送了一个POST请求

转到urls.py:

转到views.py:

转到post.html:

页面显示:

这里大家可能会有疑问,下图POST代码部分貌似没有执行

原因在于接收GET请求时重定向到了work4:fill,这里对views.py的代码进行优化:

return render(request, "hobby.html")

urls:

重新启动运行,在浏览器输入:

http://127.0.0.1:8000/work4/reverse/    回车

此时发现依然未执行views.py中show_reverse函数的POST部分

继续修改代码:

views.py:

def show_hobby(request,hobby):
    return render(request, "post.html", locals())

urls.py:

hobby.html:

重新启动运行,浏览器输入:

http://127.0.0.1:8000/work4/reverse/

输入爱好,点击提交

转到hobby.html:

转到urls.py:

转到views.py:

转到post.html:

页面同时显示:

通过整个过程的分析,可以熟悉GET,POST命令在前后端的运行流程,了解掌握前端form表单关于post请求的执行过程,有助于构建各部分代码的关联性,更好的理解掌握传递参数,调用GET,POST请求的方法.

相关推荐

  1. Web框架开发-Django-数据库查询

    2024-01-27 06:56:02       18 阅读
  2. uView Form

    2024-01-27 06:56:02       41 阅读

最近更新

  1. TCP协议是安全的吗?

    2024-01-27 06:56:02       14 阅读
  2. 阿里云服务器执行yum,一直下载docker-ce-stable失败

    2024-01-27 06:56:02       16 阅读
  3. 【Python教程】压缩PDF文件大小

    2024-01-27 06:56:02       15 阅读
  4. 通过文章id递归查询所有评论(xml)

    2024-01-27 06:56:02       18 阅读

热门阅读

  1. 面试 Vue 框架八股文十问十答第十二期

    2024-01-27 06:56:02       34 阅读
  2. openssl3.2/test/certs - 076 - critical unknown extension

    2024-01-27 06:56:02       32 阅读
  3. 洛谷B3622

    2024-01-27 06:56:02       27 阅读
  4. Git常用命令

    2024-01-27 06:56:02       36 阅读
  5. Python图像处理:PIL库的使用

    2024-01-27 06:56:02       33 阅读
  6. 计算机网络(第六版)复习提纲11

    2024-01-27 06:56:02       25 阅读