首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

Django教程 —— 视图及URL

/admin/ 是我们想要请求的页面,服务器在收到这个请求之后,就一定对应着一个处理动作,这个处理动作就是帮我们产生页面内容并返回回来,这个过程在 Django 中是由 视图 来做的。...对于 Django 的设计框架 MVT ,用户在 URL 中请求的是 views 视图,视图接收请求后进行处理,并将处理的结果返回给请求者。...在 Django 中使用视图,一般需要进行两步操作: 定义视图 配置URL 运行环境 Python 3.9 Django 3.1.2 Django视图 基于函数的视图 视图函数的必须有一个参数,一般叫...return HttpResponse("POST请求 - 图书信息页") 配置URL 因为 Django 的 URL解析器 希望将请求和关联的参数发送给可调用的函数而不是类,所以基于类的视图具有一个...as_view() 的类方法,该类方法返回一个函数,该请求可以在请求到达与关联模式匹配的 URL 时被调用。

72620

Django中的url与视图详解(3)

Django中的url与视图详解(3) 可能你学习到这里,感觉好乱,所将的知识点没有一丝的关联,这个是没有办法的,Django与Flask有所不同的,Django是结构化的,每个模块都有知识点,我们只有先了解...有时候内置的URL转换器不能实现我们的需求,因此,Django很人性化的给我们一个接口让我们自己定义URL转换器。...实现to_python(self,value)方法,这个方法是将URL中的值转换一下,然后传给视图函数的。...实现to_url(self,value)方法,这个方法是在做URL反转的时候,将传进来的参数转换后拼接成一个正确的URL。 5....解释: 当在访问blog/的时候,因为没有传递num参数,所以会匹配到第一个URL,这时候就执行view.page这个视图函数,而在page函数中,又有num=1这个默认参数。

1.5K20
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    Django中的url与视图详解(2)

    本文链接:https://blog.csdn.net/weixin_43908900/article/details/94892086 Django中的url与视图详解(2) url命名: 因为url...给url取个名字,以后使用url的时候就使用他的名字进行反转就可以了,就不需要写死url了。.../',views.login,name='login') ] 应用命名空间: 在多个APP中会出现相同的url,因为在现实环境中,一个项目不能是一个人完成的,为了避免在反转的时候出现混淆,我们需要在APP...==>应用命名空间:url名称的方式; login_url = reverse('front:login') 实例命名空间: 一个app,可以创建多个实例。...可以使用多个url映射同一个app。所以这就会产生一个问题。以后在做反转的时候,如果使用应用命名空间,那么就会发生混淆。为了避免这个问题。我们可以使用实例命名空间。

    1.1K20

    Django中的url与视图详解(1)

    本文链接:https://blog.csdn.net/weixin_43908900/article/details/94463842 Django中的url与视图详解(1) 这是Django的第一部分...:关于url跟视图的相关知识,下面请看操作: url映射: 映射是Django的原生功能,因为在settings.py中配置了ROOT_URLCONF为urls.py。...然后在视图函数中也要写一个参数,视图函数中的参数必须和url中的参数名称保持一致,不然就找不到这个参数。另外,url中可以传递多个参数。...---- 上面说的可能比较抽象,详细解说一下:这里是一个对应的过程。。。。 ? ? 这种一一对应的,第一个函数是在views.py(视图函数中)、第二个是在url.py中,结合上面文字加深理解。...int:只有是一个或者多个的阿拉伯数字。 path:所有的字符都是满足的。 uuid:只有满足uuid.uuid4()这个函数返回的字符串的格式。

    1.3K30

    Django 2.1.7 视图 url的路径path、repath配置

    参考文献 Django 2.1 官网文档 视图 现在让我们向 assetinfo/views.py 里添加更多视图。那么增加什么类型的视图呢?...根据之前篇章创建的服务器-中间件信息表,那么可以根据视图查询数据,然后返回到页面之中。那么先来定义一下下面做哪些查询视图页面: 查询某个服务器的详情信息 /getServerinfoDetail?...." % middleware_id) 那么写好了视图之后,下一步就是编写配置url的访问路径,以及参数的获取了。...返回一个int。 slug - 匹配由ASCII字母或数字组成的任何slug字符串,以及连字符和下划线字符。例如, building-your-1st-django-site。...返回一个 `UUID`[2]实例。 path- 匹配任何非空字符串,包括路径分隔符 '/'。这使您可以匹配完整的URL路径,而不仅仅是URL路径的一部分str。

    1.2K20

    Python测试开发django3.视图和URL配置

    当 Django 响应一个请求时,它会从 urlpatterns 的第一项开始,按顺序依次匹配列表中的项,直到找到匹配的项,然后执行该条目映射的视图函数或下级路由,其后的条目将不再继续匹配。...page=3 时,也只会尝试匹配 myapp/ view view指的是处理当前url请求的视图函数。...当Django匹配到某个路由条目时,自动将封装的HttpRequest对象作为第一个参数,被“捕获”的参数以关键字参数的形式,传递给该条目指定的视图view。...kwargs 任意数量的关键字参数可以作为一个字典传递给目标视图。 name 对你的URL进行命名,让你能够在Django的任意处,尤其是模板内显式地引用它。...这是一个非常强大的功能,相当于给URL取了个全局变量名,不会将url匹配地址写死。 path()方法的四个参数,每个都非常有讲究,这里先做基本的介绍,在后面有详细的论述。

    57620

    Django 教程 --- Django中的视图

    根据Django文档,视图函数是一个Python函数,它接受Web请求并返回Web响应。此响应可以是网页的HTML内容,重定向,404错误,XML文档或图像(Web浏览器可以显示的任何内容) ?...这是视图功能。每个视图函数都将HttpRequest对象作为其第一个参数,通常将其命名为request 该视图返回一个HttpResponse对象,其中包含生成的响应。...每个视图函数负责返回HttpResponse对象 有关HttpRequest和HttpResponse的更多信息,请访问-Django请求和响应周期- HttpRequest和HttpResponse对象...基于功能的视图 基于函数的视图是使用python中的函数编写的,该函数以HttpRequest对象作为参数并返回HttpResponse对象。...Django CRUD(创建,检索,更新,删除)基于功能的视图:- 创建视图–基于函数的视图Django 细节视图–基于函数的视图Django 更新视图–基于函数的视图Django 删除视图–基于函数的视图

    3K30

    Django的URL路由系统

    URL配置 URL配置就像Django所支撑网站的目录.它的本质是URL与要为该URL调用的视图之间的映射表.你就是以这种方式告诉Django,对于哪个URL调用的这段代码....: 一个可调用的对象,通常为一个视图函数或一个指定视图函数路径的字符串   (3) 参数: 可选的要传递给视图函数的默认参数(字典形式)   (4)别名: 一个可选的name参数 二....视图函数中指定默认值 # urls.py中 from django.conf.urls import url from . import views urlpatterns = [ url(...' %} #模板选择的时候,被django解析成了这个名字对应的url,这个过程叫做反向解析   在views函数中可以这样引用:(后面再讲这个视图函数应用反向解析的内容,上面的是模板应用反向解析的过程...在某些场景中,一个视图是通用的,所以在URL 和视图之间存在多对一的关系。对于这些情况,当反查URL 时,只有视图的名字还不够。

    1.4K40

    django的类视图-11

    使用类视图 创建类视图 注册路由 类视图使用装饰器 在url中装饰 在类视图中装饰 method_decorator 的 name 参数 使用Mixin扩展类 使用函数方式定义的视图叫函数视图,虽然使用方便...创建类视图 使用类视图,代码是这样子的 from django.views import View class ClassView(View): def get(self, request...django提供的 View 类,使用 from django.views import View 导入 注册路由 配置类视图的时候,使用类视图的 as_view 方法注册路由 urlpatterns...= [ url(r'^class_view', views.ClassView.as_view(), name="class_view") ] as_view 会返回类中一个方法的引用,它会到...如果向上边的类视图发送一个 GET 请求,他会把 GET 转换为小写形式并和类中的方法进行匹配,然后匹配到 get 方法,会把 get 方法的引用返回到 as_view 调用处。

    76830

    真正的 Django 博客首页视图

    在此之前我们已经编写了 Blog 的首页视图,并且配置了 URL 和模板,让 Django 能够正确地处理 HTTP 请求并返回合适的 HTTP 响应。...不过我们仅仅在首页返回了一句话:欢迎访问我的博客。...首页视图函数 上一节我们阐明了 Django 的开发流程。即首先配置 URL,把 URL 和相应的视图函数绑定,一般写在 urls.py 文件里,然后在工程的 urls.py 文件引入。...其次是编写视图函数,视图中需要渲染模板,我们也在 settings.py 中进行了模板相关的配置,让 Django 能够找到需要渲染的模板。最后把渲染完成的 HTTP 响应返回就可以了。...all 方法返回的是一个 QuerySet(可以理解成一个类似于列表的数据结构),由于通常来说博客文章列表是按文章发表时间倒序排列的,即最新的文章排在最前面,所以我们紧接着调用了 order_by 方法对这个返回的

    3.5K80

    python解析url返回的json格式

    keyword=周杰伦&pagesize=1') #通过urllib模块中的urlopen的方法打开url weatherHtml1 = weatherHtml.read() #通过read方法获取返回数据...print "url返回的json数据:",weatherHtml1 #打印返回信息 weatherJSON = json.loads(weatherHtml1) #将返回的json格式的数据转化为python...对象,json数据转化成了python中的字典,按照字典方法读取数据 print "python的字典数据:",weatherJSON print "字典中的data数据",weatherJSON["data..."] print "lists列表的数据",weatherJSON["data"]["lists"][0] #lists里面的数据是一个列表(按照序列编号来查看数据) print weatherJSON...["data"]["lists"][0]["SongName"] #lists的0号数据是一个字典,按照字典方法查看数据 url返回的json数据 本文出自http://www.cnblogs.com

    3.3K10

    Django学习笔记之Django的url反向解析

    0x00 URL反向解析和三种不同的反向解析方式 Django中提供了关于URL的映射的解决方案,可以做两个方向的使用: 1.普通解析过程:由客户端的浏览器发起一个url请求,Django根据URL解析...,把url中的参数捕获,调用相应的视图,获取相应的数据,然后返回给客户端显示。...2.反向解析:通过一个视图的名字,再加上一些参数和值,逆向获取相应的URL。...articles/\d{4} # 最终的结果为2012 Archive 0x02 视图中的重定向 from django.core.urlresolvers...()方法,然后原理是根据提供的视图和参数的值来逆向查找URLconf,匹配相应的url然后把值拿回来, # 最后,reverse()返回的值为:articles/2006/,这样就逆向的查出了需要的url

    84010

    Flask 视图函数的URL路由设置说明

    相对于Django的URL路由设置来说,Flask配置的方式有较多的不同。 下面来根据几个示例,来看看有什么地方不同。...示例如下: app.url_map 查看所有路由 使用methods设置视图GET、POST请求的方式 同一路由装饰多个视图函数 同一视图多个路由装饰器 使用 url_for 进行url反向解析 app.url_map...在Django中可以在urls.py中查看所有视图的url信息,那么Flask如何查看所有视图url的信息呢? ? 可以看到日志中打印出了url的信息。...从结果来看,同一个url下,根据配置不同的method,则可以设置到不同的视图函数进行业务处理。 同一视图多个路由装饰器 一个视图如何定义多个url进行访问?...使用 url_for 进行反解析 类似于Django在设置转发url的时候不会直接去写死路径,而是使用url设置的name值来进行url反向解析。

    1.8K00

    Django 官方推荐的姿势:类视图

    使用类视图是 django 推荐的做法,熟悉了类视图的使用方法后,能够减少视图函数的重复代码,节省开发时间。接下来就让我们把博客应用中的视图函数改成基于类的通用视图。...'index'), ... ] 前面已经说过每一个 URL 对应着一个视图函数,这样当用户访问这个 URL 时,Django 就知道调用哪个视图函数去处理这个请求了。...在 Django 中 URL 模式的配置方式就是通过 url 函数将 URL 和视图函数绑定。...然后我们调用父类的 get_queryset 方法获得全部文章列表,紧接着就对返回的结果调用了 filter 方法来筛选该分类下的全部文章并返回。...配置好详情页视图之后,访问一下文章的详情,可以看到页面返回的结果和函数视图是一模一样的,至此,类视图就改造完毕。

    1.3K20

    Django装饰器的使用 (类视图)

    为了理解方便,我们先来定义一个为函数视图准备的装饰器(在设计装饰器时基本都以函数视图作为考虑的被装饰对象),及一个要被装饰的类视图。...,但因装饰行为被放置到了url配置中,单看视图的时候无法知道此视图还被添加了装饰器,不利于代码的完整性,不建议使用。...此种方式会为类视图中的所有请求方法都加上装饰器行为(因为是在视图入口处,分发请求方式前)。...4.2 在类视图中装饰 在类视图中使用为函数视图准备的装饰器时,不能直接添加装饰器,需要使用method_decorator将其转换为适用于类视图方法的装饰器。...method_decorator的作用是为函数视图装饰器补充第一个self参数,以适配类视图方法。

    1.1K10
    领券