2016-05-29 63 views
0
期间给予2

所以我必须在我看来,下面的代码重定向功能鉴于需要1个位置参数,但重定向

查看文件:

def signIn(request): 
    .... 
    .... 
    return HttpResponseRedirect("/admin_page") 

现在admin_page在映射url等

url(r'(admin_page)$',"adminApp.views.show_admin_page"), 

现在这就是我的看法文件看起来像

def show_admin_page(request): 
    return render(request, 'hayyan.html') 

其结果是我得到的错误

show_admin_page() takes 1 positional argument but 2 were given 

为什么会出现呢?还有什么其他方法正在传递给show_admin_page

回答

1

你不需要括号在这个网址:

url(r'(admin_page)$',"adminApp.views.show_admin_page"), 

如,你可以在这里看到examples

从URL各地捕捉价值,只是把括号它。

URL模式,你使用的括号admin_page,所以认为你有两个参数requestcaptured_value创建:

def show_admin_page(request, captured_value): 
    ... 

,因为你并不需要从URL中捕获任何东西,你不需要捕获的组。您可以简单地有以下内容:

url(r'admin_page$',"adminApp.views.show_admin_page"), 
+0

谢谢你修复它可以告诉我为什么我的观点期待参数,并通过简单地改变它正确的正则表达式吗? –

+0

请查看更新的答案以获取更多解释。 – AKS

+1

是的,谢谢你清理上 - 标记为定时器后的答案 –