-
- #django/urls.py
- urlpatterns = patterns('',
- url(r'myapp/', include('myapp.urls')),
- url(r'^admin/', include(admin.site.urls)),
- )
-
- #myapp/urls.py
- urlpatterns = patterns('myapp.views',
- url(r'^$', 'index', name='index'),
- url(r'register/$', 'register', name='register'),
- url(r'myaccount/$', 'myaccount', name='myaccount'),
- url(r'login/$', 'login_page', name='login'),
- url(r'logout/$', 'logout_user', name='logout')
- )
-
- #myapp/login.py
- def login_page(request):
- if request.user.is_authenticated():
- return HttpResponseRedirect(reverse('index'))
- form = LoginForm(request.POST or None)
- if form.is_valid():
- username = form.cleaned_data['username']
- username = username.capitalize()
- password = form.cleaned_data['password']
- try:
- User.objects.get(username=username)
- except:
- return render(request, 'myapp/login.html', {
- 'form': form,
- 'error': "Account doesn't exist"
- })
- user = authenticate(username=username, password=password)
- if user is not None:
- if user.is_active:
- login(request, user)
- return HttpResponseRedirect(reverse('index'))
- else:
- return render(request, 'myapp/login.html', {
- 'form': form,
- 'error': 'Account is disabled or banned',
- })
- else:
- return render(request, 'myapp/login.html', {
- 'form': form,
- 'form': 'Authentication Error!'
- })
- return render(request, 'myapp/login.html', {
- 'form': form,
- })
-
- {% if not user.is_authenticated %}
-
- #myapp/templates/myapp/login.html
- <strong>Login</strong>
- <form action='{% url 'login' %}' method="post">{% csrf_token %}
- {{ form.as_p }}
- <input type="submit" value="Login">
- </form>
- {{ error }}
- {% endif %}
-