繁体   English   中英

我可以删除django中url中的前导零吗?

[英]Can I remove leading zeros in a url in django?

我从旧网站重定向网址,这让我得到这样的网址:

http://example.com/blog/01/detail

我想自动从这些网址中删除前导零 (似乎无论有多少零在那里001 0001 000001工作),以便页面重定向到:

http://example.com/blog/1/detail

在django有一个简单的方法吗? (或者,通过.htaccess重定向?)

网址代码:

url(u'^blog/(?P<object_id>\d+)/detail$', 
    list_detail.object_detail,
    { 'queryset' : Blog.objects.all(), },
    name='blog_detail',)

.htaccess(被重定向):

RewriteRule ^blog-([0-9]+) http://example.com/blog/$1 [R=301]

我需要一些中间件,还是在urls.py文件中有一个简单的方法可以做到这一点?

您可以通过eiditing urls.py正则表达式或.htaccess正则表达式来修复它:

在Django

'^blog/0*(?P<object_id>\d+)/detail$'

在.htaccess

RewriteRule ^blog-0*([0-9]+) http://example.com/blog/$1 [R=301]

也许

url(u'^blog/0*(?P<object_id>\d+)/detail$', 
    list_detail.object_detail,
    { 'queryset' : Blog.objects.all(), },
    name='blog_detail',)

暂无
暂无

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

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