【问题标题】:URL Captured Argument Django Saying Arguments Not MatchingURL捕获的参数Django说参数不匹配
【发布时间】:2014-10-20 16:50:38
【问题描述】:

您好,我正在尝试解决一些非常简单的问题,但我就是不知道出了什么问题,所以我希望有人能以我的方式看到错误!

这是 URL 模式:

url(r'^custserv/(\d{10})/(?P<page>\w+)/', views.analytics),

这里是视图:

@login_required(login_url='csrlogin/')
def analytics(request, number, page):
    print(request)
    context = RequestContext(request)
    ...

我给它以下链接:http://***.com/custserv/9495555555/main/

但是,在我什至可以点击“print(request)”之前就抛出了一个异常

/custserv/9495555555/main/ 处的类型错误 analytics() 正好需要 3 个参数(给定 2 个) 请求方法:GET 请求网址:http://***/custserv/9495555555/main/ Django 版本:1.6.2 异常类型:TypeError 异常值:
analytics() 正好需要 3 个参数(给定 2 个) 异常位置:/app/.heroku/python/lib/python2.7/site-packages/django/contrib/auth/decorators.py 在 _wrapped_view,第 22 行 Python 可执行文件:/app/.heroku/python/bin/python Python 版本:2.7.8

我很确定所有这些都是正确的...但肯定有一些我遗漏的东西。任何帮助将不胜感激!

PS:没有其他 urlpattern 正在访问“views.analytics”

【问题讨论】:

    标签: python django


    【解决方案1】:

    这是因为您没有命名第一个捕获组。尝试将其更改为:

    url(r'^custserv/(?P<number>\d{10})/(?P<page>\w+)/', views.analytics),
    

    【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2014-09-05
    • 2012-12-29
    • 1970-01-01
    • 2012-02-21
    • 2017-01-22
    • 2019-09-06
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多