简体   繁体   English

如何在 Django 1.11 中使我的 url 灵活?

[英]How can i do my url flexible in Django 1.11?

In my project with django I should do a site with flexible url.在我的 django 项目中,我应该做一个具有灵活 url 的站点。 For instance:例如:
mysite.com/register/kj-1k-32-mk

When someone write some other things after register/ I want to redirect them to my site.当有人在注册后写一些其他东西时/我想将它们重定向到我的网站。 How can I redirect them.我怎样才能重定向它们。 What should my urls.py looks like?我的 urls.py 应该是什么样的?

urls.py网址.py


from django.conf.urls import url
from django.contrib import admin
from olvapp import views

urlpatterns = [
    url(r'^admin/', admin.site.urls),
    url(r'^register/(?P<pk>\d+)',views.guaform,name='custform'),

] 

When I do like above, the part after register/ can't begin with a letter.当我喜欢上面的时候,注册/之后的部分不能以字母开头。

That's because of the \d+ pattern which only allows a sequence of digits.这是因为\d+模式只允许数字序列。 If you want a slug-like sequence, you can use:如果你想要一个类似蛞蝓的序列,你可以使用:

from django.conf.urls import url
from django.contrib import admin
from olvapp import views

urlpatterns = [
    url(r'^admin/', admin.site.urls),
    url(r'^register/(?P<pk>[-\w]+)',views.guaform,name='custform'),
]

Note : is no longer supported [Django-doc] since April 2020, you should consider upgrading the Django version.注意:自 2020 年 4 月起不再支持 [Django-doc],您应该考虑升级 Django 版本。

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM