Вот мой код:
settings.py
INSTALLED_APPS = ( 'django.contrib.admin', 'django.contrib.auth', 'django.contrib.contenttypes', 'django.contrib.sessions', 'django.contrib.messages', 'django.contrib.staticfiles', ) MIDDLEWARE_CLASSES = ( '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.XFrameOptionsMiddleware', ) TEMPLATE_CONTEXT_PROCESSORS = ( "django.contrib.auth.context_processors.auth", "django.core.context_processors.debug", "django.core.context_processors.i18n", "django.core.context_processors.media", "django.core.context_processors.static", "django.core.context_processors.tz", "django.contrib.messages.context_processors.messages", )
views.py
from django.shortcuts import render_to_response, redirect from django.contrib import auth from django.core.context_processors import csrf def mylogin(request): args = {} args.update(csrf(request)) if request.POST: username = request.POST.get('username', '') password = request.POST.get('password', '') user = auth.authenticate(username=username, password=password) if user is not None: auth.login(request, user) return redirect('/') else: args['login_error'] = "Пользователь не найден" return render_to_response('loginsys/login.html', args) else: return render_to_response('loginsys/login.html', args)
{% if user.is_authenticated %} <li><a class="navbar-brand" href="/auth/logout/">Выйти <strong>{{ user.username }}</strong>.</a></li> {% else %} <li><a class="navbar-brand" href="/auth/login/">Войти</a></li> {% endif %}
loginsys.urls.py
from django.conf.urls import patterns, url from loginsys.views import mylogin urlpatterns = patterns('', url(r'^login/$', mylogin), )
urls.py
from django.conf.urls import patterns, include, url
from django.contrib import admin
urlpatterns = patterns('',
url(r'^admin/', include(admin.site.urls)),
url(r'^auth/', include('loginsys.urls')),
)