Django重定向错误。似乎什么都没有

2024-06-07 18:01:17 发布

您现在位置:Python中文网/ 问答频道 /正文

我知道有很多关于django重定向的帖子。但是我没有发现任何类似我的问题。我不知道发生了什么事,但我读了很多书,仍然没有发现任何关于它的东西。

所以我发布了我的代码。

我的项目网址.py公司名称:

from django.conf.urls import url, include
urlpatterns = [
    url(r'^backbone', include('backbone.urls', namespace='backbone')),
]

我的应用程序网址.py在

^{pr2}$

我的应用程序视图.py在

^{3}$

控制台上出现的错误:

django.urls.exceptions.NoReverseMatch: Reverse for 'login' with arguments '()' and keyword arguments '{'app': 'app'}' not found. 1 pattern(s) tried: ['backbone/login$']

浏览器错误:

NoReverseMatch at /backbone/shell
Reverse for 'login' with arguments '()' and keyword arguments '{'app': 'app'}' not found. 1 pattern(s) tried: ['backbone/login$']
Request Method: GET
Request URL:    http://192.168.1.79/backbone/shell
Django Version: 1.10.3
Exception Type: NoReverseMatch
Exception Value:    
Reverse for 'login' with arguments '()' and keyword arguments '{'app': 'app'}' not found. 1 pattern(s) tried: ['backbone/login$']
Exception Location: /usr/local/lib/python3.5/dist-packages/django/urls/resolvers.py in _reverse_with_prefix, line 392
Python Executable:  /usr/bin/python3
Python Version: 3.5.2
Python Path:    
['/home/ipi/workspace/RamoSP',
 '/usr/lib/python35.zip',
 '/usr/lib/python3.5',
 '/usr/lib/python3.5/plat-x86_64-linux-gnu',
 '/usr/lib/python3.5/lib-dynload',
 '/usr/local/lib/python3.5/dist-packages',
 '/usr/lib/python3/dist-packages']
Server time:    Thu, 24 Nov 2016 19:56:47 +0000

我不明白。我正在发送它需要的参数,对吗?我已经被困了一段时间了。在


Tags: anddjangopyappforlibusrwith
2条回答

不,您正在尝试访问此URL:

url(r'^/login$', views.login, name='login')

因为它不需要任何参数,所以它不需要任何参数。在

看看this post,特别是向视图发送参数主题。它将帮助您理解为什么不能将参数发送到此URL中的视图。在

顺便说一下,您可能希望在您的请求中向这个URL发送查询参数。在这种情况下,而不是:

^{pr2}$

您必须:

url = '{}?app={}'.format(reverse('backbone:login'), '?item=4')
redirect(url)

你想要什么?在

/backbone/login?app=cashier

解决方案:https://stackoverflow.com/a/3766503/6622256

或者

^{pr2}$

解决方案:

在路由声明中添加参数“app”:

url(r'^login/(?P<app>)$', views.login, name='login'),

相关问题 更多 >

    热门问题