Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/django/24.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 与#x27相反;登录';带参数';()';和关键字参数';{}';找不到_Python_Django - Fatal编程技术网

Python 与#x27相反;登录';带参数';()';和关键字参数';{}';找不到

Python 与#x27相反;登录';带参数';()';和关键字参数';{}';找不到,python,django,Python,Django,我想在Django视图中使用reverse(),以避免硬代码,但获得“参数为“()”且关键字参数为“{}”的'login'的reverse”。这是我的密码: URLConf: urlpatterns = patterns( '', url(r'^accounts/', include('accounts.urls', namespace="accounts")), url(r'^admin/', include(admin.site.urls)), ) url.py u

我想在Django视图中使用reverse(),以避免硬代码,但获得“参数为“()”且关键字参数为“{}”的'login'的reverse”。这是我的密码:

URLConf:

urlpatterns = patterns(
    '',
    url(r'^accounts/', include('accounts.urls', namespace="accounts")),
    url(r'^admin/', include(admin.site.urls)),
)
url.py

urlpatterns = patterns(
    '',
    url(r'^login/$', views.login, name='login'),
    url(r'^signup/$', views.signup, name='signup'),
)
views.py:

def login(request):
    return render(request, reverse("login"))


def signup(request):
    return render(request, reverse("signup"))
这是我的回溯信息:

环境:

请求方法:获取
请求URL:
http://127.0.0.1:8000/accounts/login/

Django版本:1.7
Python版本:2.7.5
已安装的应用程序:
('django.contrib.admin',
“django.contrib.auth”,
“django.contrib.contenttypes”,
“django.contrib.sessions”,
“django.contrib.messages”,
“django.contrib.staticfiles”,
“账户”)
已安装的中间件:
('django.contrib.sessions.middleware.SessionMiddleware',
'django.middleware.common.CommonMiddleware',
'django.middleware.csrf.CsrfViewMiddleware',
'django.contrib.auth.middleware.AuthenticationMiddleware',
'django.contrib.auth.middleware.SessionAuthenticationMiddleware',
'django.contrib.messages.middleware.MessageMiddleware',
'django.middleware.clickjacking.xframeoptions中间件')

回溯: get_响应中的文件“/Users/feizhao/.virtualenvs/nahan/lib/python2.7/site packages/django/core/handlers/base.py” 111响应=包装的回调(请求,*回调参数,**回调参数)
登录时的文件“/Users/feizhao/dropbox/nahan/accounts/views.py” 11返回呈现(请求、反向(“登录”)) 文件“/Users/feizhao/.virtualenvs/nahan/lib/python2.7/site packages/django/core/urlresolvers.py”的格式相反 546将iri_返回到_uri(解析器。使用_前缀(视图、前缀、*args、**kwargs)反转)
文件“/Users/feizhao/.virtualenvs/nahan/lib/python2.7/site packages/django/core/urlresolvers.py”位于带前缀的反向文件中 463(查找\视图\参数、kwargs、len(模式)、模式)

异常类型:NoReverseMatch at/accounts/login/
异常值:找不到参数为“()”且关键字参数为“{}”的“login”的反转。已尝试0个模式:[]

我已经在stackoverflow中看到了一些类似的问题,例如,但没有帮助


谁能告诉我为什么错了?非常感谢

您已经为URL提供了一个名称空间,因此需要在要反转的名称中包含该名称空间:

def login(request):
    return render(request, reverse("accounts:login"))


def signup(request):
    return render(request, reverse("accounts:signup"))

您已经为URL提供了一个名称空间,因此需要在要反转的名称中包含该名称空间:

def login(request):
    return render(request, reverse("accounts:login"))


def signup(request):
    return render(request, reverse("accounts:signup"))

谢谢,但是我得到了“templateDoesnotexistat/accounts/login/”。我的模板是accounts/templates/accounts/login.html,accounts/templates/accounts/signup.html。这是一个单独的问题,但是我认为目录结构应该是
accounts/templates/signup.html
…请参阅django
TEMPLATE\u DIRS
TEMPLATE\u LOADERS
的文档,我将目录结构更改为accounts/templates/signup.html,仍然没有任何工作。明白了!非常感谢,愚蠢的问题!阅读文档并仔细思考!再次感谢。谢谢,但是我得到了“templateDoesnotexistat/accounts/login/”。我的模板是accounts/templates/accounts/login.html,accounts/templates/accounts/signup.html。这是一个单独的问题,但是我认为目录结构应该是
accounts/templates/signup.html
…请参阅django
TEMPLATE\u DIRS
TEMPLATE\u LOADERS
的文档,我将目录结构更改为accounts/templates/signup.html,仍然没有任何工作。明白了!非常感谢,愚蠢的问题!阅读文档并仔细思考!再次感谢。