Python url()中第三个参数名的用途是什么?为什么urlpatterns列表中只有一个元素,却有一个逗号?
我正在做一个django项目(教程),我在urls.py文件中遇到了这段代码Python url()中第三个参数名的用途是什么?为什么urlpatterns列表中只有一个元素,却有一个逗号?,python,django,url,Python,Django,Url,我正在做一个django项目(教程),我在urls.py文件中遇到了这段代码 from django.conf.urls import url from . import views urlpatterns = [ url(r'^$', views.index, name='index'), ] 我使用了这个文件并得到了正确的输出。但是,为了进行实验,我在url函数中省略了“name”参数。只有两个参数,正则表达式和视图。像这样: from django.conf.urls import
from django.conf.urls import url
from . import views
urlpatterns = [
url(r'^$', views.index, name='index'),
]
我使用了这个文件并得到了正确的输出。但是,为了进行实验,我在url函数中省略了“name”参数。只有两个参数,正则表达式和视图。像这样:
from django.conf.urls import url
from . import views
urlpatterns = [
url(r'^$', views.index),
]
尽管如此,我还是得到了正确的输出。
那么,为什么还有第三个参数,url函数中的name参数呢
此外,urlpatterns列表只包含1个元素,但在关闭列表之前,我们使用了“,”(逗号)。为什么呢
为什么还有第三个参数,url函数中的name参数
URL的名称
是可以反转的,即获取特定视图的URL。例如,您可以在生成内部链接时使用此选项
发件人:
在Django项目中工作时,一个常见的需求是可以获取最终形式的URL,用于嵌入生成的内容(视图和资产URL、向用户显示的URL等),或者用于处理服务器端的导航流(重定向等)
我们可以获取URL的主要信息是负责处理URL的视图的标识(例如名称)。必须参与正确URL查找的其他信息包括视图参数的类型(位置、关键字)和值
让我们考虑一个例子:
想象一下,你正在建立一个网站,你想制作一个“关于我们”的页面。你也很喜欢恐龙,所以你想,“如果我的URL都是恐龙的名字,那不是很酷吗?”所以你在URL.py中加入了类似的内容:
url(r'^tyrannosaurus-rex$', views.about_us),
现在你想链接到那个页面,也许在你的导航栏里。没问题。您可以在模板中放入类似的内容:
这是可行的,但您复制了一些信息:您的“关于我们”页面可以在/霸王龙
上找到
由于某些原因,你的网站流量很小,所以你雇了人来查看你的搜索引擎优化。他们告诉你,你的URL应该与页面上的内容有关,而不是像恐龙一样酷。在这里,您的“关于我们”页面应该位于类似于/about-us
的位置。现在您必须返回并在两个地方更新代码:url.py
和您的模板。现在想象一下,在你拥有的每一个链接上都这样做
相反,如果你把
url(r'^tyrannosaurus-rex$', views.about_us, name='about_us'),
进入urls.py
您可以使用如下链接:
Django将查看您想要的URL的名称,并使用URL.py
中的信息来确定链接应该指向什么。现在,当您更改链接结构时,只需执行一次:在url.py
中。因为链接的名称没有更改,{%url'about_us“%}
会自动生成一个新的、正确的链接
此外,urlpatterns列表只包含1个元素,但在关闭列表之前,我们使用了“,”(逗号)。为什么呢
列表中包含一个逗号,即使只有一个元素,因为它稍微容易一些。Python允许逗号,现在我们可以轻松地在逗号之前或之后添加条目,而无需更改它
为什么还有第三个参数,url函数中的name参数
URL的名称
是可以反转的,即获取特定视图的URL。例如,您可以在生成内部链接时使用此选项
发件人:
在Django项目中工作时,一个常见的需求是可以获取最终形式的URL,用于嵌入生成的内容(视图和资产URL、向用户显示的URL等),或者用于处理服务器端的导航流(重定向等)
我们可以获取URL的主要信息是负责处理URL的视图的标识(例如名称)。必须参与正确URL查找的其他信息包括视图参数的类型(位置、关键字)和值
让我们考虑一个例子:
想象一下,你正在建立一个网站,你想制作一个“关于我们”的页面。你也很喜欢恐龙,所以你想,“如果我的URL都是恐龙的名字,那不是很酷吗?”所以你在URL.py中加入了类似的内容:
url(r'^tyrannosaurus-rex$', views.about_us),
现在你想链接到那个页面,也许在你的导航栏里。没问题。您可以在模板中放入类似的内容:
这是可行的,但您复制了一些信息:您的“关于我们”页面可以在/霸王龙
上找到
由于某些原因,你的网站流量很小,所以你雇了人来查看你的搜索引擎优化。他们告诉你,你的URL应该与页面上的内容有关,而不是像恐龙一样酷。在这里,您的“关于我们”页面应该位于类似于/about-us
的位置。现在您必须返回并在两个地方更新代码:url.py
和您的模板。现在想象一下,在你拥有的每一个链接上都这样做
相反,如果你把
url(r'^tyrannosaurus-rex$', views.about_us, name='about_us'),
进入urls.py
您可以使用如下链接:
Django将查看您想要的URL的名称,并使用URL.py
中的信息来确定链接应该指向什么。现在,当您更改链接结构时,只需执行一次:在url.py
中。因为链接的名称没有更改,{%url'about_us“%}
会自动生成一个新的、正确的链接
此外,urlpatterns列表只包含1个元素,但在关闭列表之前,我们使用了“,”(逗号)。为什么呢
该列表包含一个逗号e