如何在Django上的URL中添加多个斜杠

时间:2014-04-22 16:34:00

标签: python django url

我的Django项目中有这个URL:

url(r'^$', 'blog.views.index'),

当我去mysite.com/或mysite.com时,它运行正常,但我想在网址中承认无限斜线:

mysite.com //////////////////////

mysite.com ///

mysite.com ///////

2 个答案:

答案 0 :(得分:0)

这是您可以在项目中使用的一种解决方案:

将您的网址更新为:

...
url(r'^(?P<defname>.*)$', 'blog.views.index'),
...

这是简单的观看代码:

import inspect
def index(request,defname=None):
    ## check if url was "/" without any defname
    if not defname:
        return HttpResponse("this is home page")

    ## check definition existence
    defname = locals()[defname]
    if not inspect.isfunction(defname):
        raise Http404()

    ## now run that definition
    return HttpResponse(defname())

def about():
    return "this is about us page"

答案 1 :(得分:0)

如果MortezaIpo的建议有效

url(r'^[/]*', 'blog.views.index'),

但捕获了所有网址,尝试将其移至网址元组的末尾。 虽然这应该是一个更好的模式。

url(r'^[/]*$', 'blog.views.index'),