2014-02-04 3 views
8

Я новичок в django, хотя у меня есть опыт использования python. Я в настоящее время обучение Джанго, но когда я пытаюсь использовать прилагаемое систему входа в систему, я получаю следующее сообщение об ошибке:Форма входа в Django

Template Loader Error: 
Django tried loading these templates, in this order: 
Using loader django.template.loaders.filesystem.Loader: 
Using loader django.template.loaders.app_directories.Loader: 
/usr/lib/python2.7/site-packages/django/contrib/admin/templates/registration/login.html (File does not exist) 
/usr/lib/python2.7/site-packages/django/contrib/auth/templates/registration/login.html (File does not exist) 

Соответствующий код из views.py:

@login_required 
def userPage(request): 
    return HttpResponse("Hello User!") 

Я использую Django 1.6 .1 и python 2.7.5 на Fedora 20. Я уже попробовал переустановить django. В папках из сообщения об ошибке находятся другие шаблоны. Как я могу это решить?

ответ

17

Вы должны предоставить URLs (проект/urls.py)

from django.contrib.auth.views import login 
from django.contrib.auth.views import logout 

url(
    regex=r'^login/$', 
    view=login, 
    kwargs={'template_name': 'login.html'}, 
    name='login' 
), 
url(
    regex=r'^logout/$', 
    view=logout, 
    kwargs={'next_page': '/'}, 
    name='logout' 
), 

и шаблон login.html (что-то подобное)

<form action="{% url 'login' %}" method="post" accept-charset="utf-8"> 
    {% csrf_token %} 
    {% for field in form %} 
     <label>{{ field.label }}</label> 
     {% if field.errors %} 
      {{ field.errors }} 
     {% endif %} 
     {{ field }} 
    {% endfor %} 
    <input type="hidden" name="next" value="{{ next }}" /> 
    <input class="button small" type="submit" value="Submit"/> 
</form> 
+7

Это, вероятно, стоит отметить, что 'потребности login.html' быть внутри папки с именем registration (которая должна находиться в каталоге, указанном в TEMPLATE_DIRS) – yuvi

+0

Это решило! Следующее, что мне нужно было сделать, это установить LOGIN_URL в settings.py [documentation] (https://docs.djangoproject.com/en/1.6/ref/settings/#login-url) – martijnvdijk

Смежные вопросы