2013-04-12 40 views
1

我工作的Django項目,我搜索了一會兒登錄和T是如何發現的最簡單的辦法就是在「django.contrib中.auth」。所以我說我的登錄視圖的urls.py:ImproperlyConfigured在/登錄/錯誤導入認證後端backends.EmailAuthBackend:「無模塊命名後端」

url(r'^login/$','django.contrib.auth.views.login',{'template_name': 'login.html'}), 

,這是我的模板:

<html> 
<head> 
    <title>Django Bookmarks - User Login</title> 
</head> 
<h1>User Login</h1> 
{% if form.errors %} 
    <p>Your username and password didn't match. 
     Please try again.</p> 
{% endif %} 
<form method="post" action=".">{% csrf_token %} 
    <p><label for="id_username">Username:</label> 
     {{ form.username }}</p> 
    <p><label for="id_password">Password:</label> 
     {{ form.password }}</p> 
    <input type="hidden" name="next" value="/" /> 
    <input type="submit" value="login" /> 
</form> 
</body> 
</html> 
+1

您可以添加設置的AUTHENTICATION_BACKENDS部分嗎?我假設你已經從默認改變了它django.contrib.auth.backends.ModelBackend –

+0

之一不,我沒有改變它 – Imoum

+0

運行'./manage.py shell'向我們展示'django.conf.settings。 AUTHENTICATION_BACKENDS'。 – soon

回答

0

看來你已經添加在settings.py

一些定製的後端。試試看外殼:

from django.conf import settings 

settings.AUTHENTICATION_BACKENDS 

似乎Django是試圖導入一個名爲backends模塊,您因爲你正在犯的一些路徑錯誤而沒有。

如果EmailAuthBackend是在一個應用程序some_app命名backends.py模塊中定義的,你需要添加some_app.backends.EmailAuthBackendAUTHENTICATION_BACKENDS

相關問題