我目前正在学习Django。
到目前为止,我使用Django 1.1,但现在使用Django 2.0。
Django 2.0使用path()而不是url(),我对此并不感到奇怪。
在Django 1.1中,我的网址如下所示:
url(r'^about/$', views.AboutView.as_view(), name='about'),
现在使用Django 2,它看起来像这样
path('about/', views.AboutView.as_view(), name='about'),
到目前为止还算不错,但我只是不理解如何转换它
url(r'^post/(?P<pk>\d+)$', views.PostDetailView.as_view(),
name='post_detail'),
这样它就可以与新版本一起使用。仅将url拖到path无效,并且将url更改为re_path也不行。有人可以帮我解决这个问题吗?
提前致谢
最佳答案
正则表达式将以不同的方式放置。
path('post/<int:pk>', views.PostDetailView.as_view(), name='post_detail'),
我只是在我的一个项目中使用与您拥有的相同的URL进行了测试并对其进行了测试,并且可以正常工作。通过在此处使用关键字
int
,它们使url更简单易读。This is the new method to do it, Please read the release notes they have clearly mentioned these changes.
关于django - Django 2.0 url()到path(),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48123510/