python之django路由和视图案例教程

 更新时间:2021年07月26日 09:20:05   作者:windyson2004  
这篇文章主要介绍了python之django路由和视图案例教程,本篇文章通过简要的案例,讲解了该项技术的了解与使用,以下就是详细内容,需要的朋友可以参考下

django路由和视图

要了解django是如何运行的,首先要了解路由和视图两个概念,然后我们在项目中添加一些简单的路由和视图

路由和视图的概念

视图:一个视图函数(类),简称视图,是一个简单的Python一个视图函数(类),简称视图,是一个简单的Python 函数(类),它接受Web请求并且返回Web响应。
响应可以是一张网页的HTML内容,一个重定向,一个404错误,一个XML文档,或者一张图片。
无论视图本身包含什么逻辑,都要返回响应。
个人觉得django视图的概念其实是spring中的Action和View参和在一起的概念。

路由:维护视图视图函数映射关系的结构,在Web框架中,称之为路由维护视图视图函数映射关系的结构,在Web框架中,称之为路由。
Django把这种映射关系配置在(urls.py)。它的本质是URL与要为该URL调用的视图函数之间的映射表。
可以对比spring中的ActionMapping,能够很好理解路由的概念。

一个简单的例子

我们需要自己创建视图集合,按惯例把视图模块放在views.py中,我们创建分别3个视图:

index 首页
order 显示订单列表
produt 显示产品列表

from django.shortcuts import render
from django.http import HttpResponse

def index(request):
    html = "<html><body>It is index page</body></html>"
    return HttpResponse(html)

def orderlist(request):
    html = "<html><body>It is order list</body></html>"
    return HttpResponse(html)

def produtlist(request):
    html = "<html><body>It is produt list</body></html>"
    return HttpResponse(html)

路由信息配置在项目中urls.py,我们修改下添加自己的路由

from django.contrib import admin
from django.urls import path
from django.urls import re_path
from .views import *                 “ 导入视图模块

urlpatterns = [
    path('admin/', admin.site.urls),
    path('index/', index),           “ index路由
    path('order/', orderlist),           “ orderlist路由
    path('produt/', produtlist),       “ produtlist路由
]

我们看一下运行结果

index路由

在这里插入图片描述

orderlist路由

在这里插入图片描述

正则路由

上面是常规路由配置,如果我们需要增加根据订单号查询某一个订单的URL怎么办,订单号并不是固定的,
我们用到正则路由配置

views.py

def order(request, id):
    html = "<html><body>It is order detail id =" + id + "  </body></html>"
    return HttpResponse(html)

urls.py

urlpatterns = [
    re_path('order/([0-9]+)/', order ),          “ ([0-9]+) 表示订单号是数字
]

我们看一下运行结果

在这里插入图片描述

到此这篇关于python之django路由和视图案例教程的文章就介绍到这了,更多相关python之django路由和视图内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • Django基础知识与基本应用入门教程

    Django基础知识与基本应用入门教程

    这篇文章主要介绍了Django基础知识与基本应用,结合实例形式分析了Django框架基本的项目创建、启动、查看版本等操作,并结合一个简单的blog应用示例分析了Django的基本使用方法,需要的朋友可以参考下
    2018-07-07
  • Python自动创建Excel并获取内容

    Python自动创建Excel并获取内容

    这篇文章主要介绍了Python自动创建Excel并获取内容,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2020-09-09
  • python插入排序算法实例分析

    python插入排序算法实例分析

    这篇文章主要介绍了python插入排序算法,通过两个简单实例对比分析了Python插入排序算法的相关实现技巧,需要的朋友可以参考下
    2015-07-07
  • 详解python数值与字符串高级用法

    详解python数值与字符串高级用法

    这篇文章主要介绍了python数值与字符串高级用法,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2022-08-08
  • Python中Scrapy爬虫图片处理详解

    Python中Scrapy爬虫图片处理详解

    这篇文章主要介绍了Python中Scrapy爬虫图片处理方式和原理,需要的朋友学习参考下吧。
    2017-11-11
  • Redis之windows下主从复制案例讲解

    Redis之windows下主从复制案例讲解

    这篇文章主要介绍了Redis之windows下主从复制案例讲解,本篇文章通过简要的案例,讲解了该项技术的了解与使用,以下就是详细内容,需要的朋友可以参考下
    2021-08-08
  • 使用pyecharts1.7进行简单的可视化大全

    使用pyecharts1.7进行简单的可视化大全

    这篇文章主要介绍了使用pyecharts1.7进行简单的可视化大全,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-05-05
  • Java如何交换字符串中两个位置的值

    Java如何交换字符串中两个位置的值

    这篇文章主要介绍了Java如何交换字符串中两个位置的值问题,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2023-06-06
  • Python属性私有化详解

    Python属性私有化详解

    私有化是为了实现更好的封装形式。能隐藏属性,不被随意修改。以前置双下划线__属性/方法名定义,但是结尾不能是双下划线。如果不让某些属性在类外部被随意更改,可设置成私有属性。在类定义的内部可以访问
    2023-02-02
  • Django框架视图层URL映射与反向解析实例分析

    Django框架视图层URL映射与反向解析实例分析

    这篇文章主要介绍了Django框架视图层URL映射与反向解析,结合实例形式分析了Django框架普通url映射、命名URL参数映射、分布式URL映射、反向解析等相关操作技巧,需要的朋友可以参考下
    2019-07-07

最新评论