在django在线课程中,讲师让我们使用url()
函数调用视图并使用urlpatterns列表中的正则表达式。我在youtube上也看到过类似的例子。例如
from django.contrib import admin
from django.urls import include
from django.conf.urls import url
urlpatterns = [
path('admin/', admin.site.urls),
url(r'^polls/', include('polls.urls')),
]
#and in polls/urls.py
urlpatterns = [
url(r'^$', views.index, name="index"),
]
然而,在通过Django教程时,他们使用path()
来代替例如:
from django.urls import path
from . import views
urlpatterns = [
path('', views.index, name="index"),
]
此外,正则表达式似乎不适用于path()
函数,因为使用path(r'^$',views.index,name="index")
不会找到mysite.com/polls/
视图。
在没有正则表达式匹配的情况下使用path()
是否正确?url()
是否更强大但更复杂,所以他们使用path()
来启动我们?还是不同的工作需要不同的工具?
path
在Django 2.0中是全新的,Django 2.0几周前才发布。大多数教程不会更新新语法。
这当然应该是一种更简单的做事方式;不过,我不会说URL更强大,您应该能够以任何一种格式表达模式。
新的django.urls.path()
函数允许更简单、更易读的URL路由语法。例如,这个例子来自以前的Django版本:
url(r'^articles/(?P<year>[0-9]{4})/$', views.year_archive)
可以写成:
path('articles/<int:year>/', views.year_archive)
以前版本中的django.conf.urls.url()
函数现在可以作为django.urls.re_path()
使用。旧的位置保持向后兼容,没有迫在眉睫的弃用。旧的django.conf.urls.include()
函数现在可以从django.urls
导入,因此您可以使用:
from django.urls import include, path, re_path
在URLconfs中。进一步阅读django文件
从Django文档获取url
url(regex,view,kwargs=None,name=None)
此函数是django的别名。网址。重新设置路径()。在未来的版本中,它可能会被弃用。
path
和re_path
之间的关键区别在于path
使用不带正则表达式的路由
您可以使用re_path
进行复杂的正则表达式调用,而只使用path
进行更简单的查找
问题内容: 在django在线课程中,讲师让我们使用该函数调用视图并使用列表中的正则表达式。我在YouTube上看到了其他示例。例如 但是,在阅读Django教程时,他们改用例如: 此外,正则表达式似乎不适用于该函数,因为使用将找不到视图。 是否使用没有正则表达式匹配的正确方法前进?是更强大,但更复杂,所以他们正在使用与开始我们吗?还是针对不同工作使用不同工具的情况? 问题答案: 从Django文
我目前正在使用一个文章显示页面在Liferay 6.2中显示我的web内容。我正在试图找出如何在之后编辑我的友好URL的路径。 当前URL: 希望的URL:
null
问题内容: 我有一个在列表中存储一些数据的对象。该实现可能会在以后更改,并且我不想向最终用户公开内部实现。但是,用户必须具有修改和访问此数据集合的能力。目前我有这样的事情: 这是否意味着我已允许内部实施细节泄漏出去?我应该这样做吗? 问题答案: 这仅取决于您是否希望您的用户能够索引数据?如果是,请使用列表。两者都是接口,因此您不会泄漏实现细节,实际上,您只需要确定所需的最低功能即可。
您可以使用replaceState转换阻止将项添加到浏览器的历史记录中。 您可以通过在Route上使用queryParams配置哈希来指定它,并通过将replace transition设置为true来选择进入replaceState转换。 语法 (Syntax) Ember.Route.extend ({ queryParams: { queryParameterName: {
当我在Liferay中创建页面(我使用的是6.2)时,它会收到一个自动生成的友好URL,遵循几个内部规则。 例如,如果我创建一个名为的页面,它将自动接收到友好的URL。 另外,如果我创建页面aaa作为页面