Thanks bro. Don't you think I should import Login in urls.py? What
about / in before the $ in urls.py? Or I should just place it like
that?

Mark Furbee wrote:
> This is my login process.
>
> urls.py:
> url(r'^login$', 'views.Login'),
> url(r'^logout$', 'views.Logout'),
>
>
> views.py:
> def Login(request, next=None):
>     """
>         Used to log into the application.
>     """
>
>     #  If the user is authenticated pass them through to the homepage.
>     if request.user.is_authenticated():
>         return HttpResponseRedirect('/')
>
>     # If the user is not authenticated, but the method is POST, they have
> posted their username and password.
>     if request.method == "POST":
>
>         # Get Username and Password.
>         username = request.POST['username']
>         password = request.POST['password']
>
>         # Authenticate.
>         user = authenticate(username=username, password=password)
>
>         # If the User is not None, they have a valid account and password.
>         if user is not None:
>
>             # If the user isactive, we can log them in.
>             if user.is_active:
>                 # Log them in, and redirect to the homepage.
>                 login(request, user)
>                 return HttpResponseRedirect('/')
>
>             # If the user is not active, pass them back to the login page,
> with a message that the account is inactive.
>             else:
>                 return render_to_response('login.htm', {'error': 'Account
> Disabled - contact I.T. for assistance'},
> context_instance=RequestContext(request))
>
>         # The user with those credentials did not exist, pass them back to
> the login page, with a message that the account was invalid.
>         else:
>             return render_to_response('login.htm', {'error': 'Invalid
> Username/Password - contact I.T. for assistance'},
> context_instance=RequestContext(request))
>
>     # They have not yet attempted a login, pass them to the login page,
> without any error messages..
>     else:
>
>         return render_to_response('login.htm', {'NoSessionTimeout': 'True',
> 'next': next}, context_instance=RequestContext(request))
>
>
> def Logout(request):
>     logout(request)
>
>     # Render the logout.htm page, which will display they are logging out
> and redirect them to the login page.
>     return render_to_response('login.htm', {'notice': 'You have been logged
> out successfully.'}, context_instance=RequestContext(request))
>
>
>
> template login.htm:
>
> .
> .
> .
> <form enctype="application/x-www-form-urlencoded" action="/login"
> method="post" name="login">
>  {% csrf_token %}
>  <div width="100%" align="center">
>  <br /><br /><br /><br /><br />
>  <div class="login_heading">Login</div>
>  <div class="login_box">
> <table class="login_table" cellpadding="0" cellspacing="0">
>  <tr><td><br /><br /><br /></td>
> {% if error %}
>  <tr>
> <td colspan="2" align="center" class="error">
>  {% FatalImage %}
> {{ error }}
> </td>
>  </tr>
> <tr><td><br /><br /></td>
>  {% endif %}
> {% if warning %}
> <tr>
>  <td colspan="2" align="center" class="warn">
> {% WarnImage %}
>  {{ warning }}
> </td>
> </tr>
>  <tr><td><br /><br /></td>
> {% endif %}
>  {% if notice %}
> <tr>
> <td colspan="2" align="center" class="notice">
>  {% NoticeImage %}
> {{ notice }}
> </td>
>  </tr>
> <tr><td><br /><br /></td>
>  {% endif %}
> <tr>
> <td align="right">Email address: &nbsp; &nbsp;</td>
>  <td align="left">
> <input type="text" value="" name="username" id="username" size="32"
> maxlength="64" />
>  </td>
> </tr>
> <tr>
>  <td align="right">Password: &nbsp; &nbsp;</td>
> <td align="left">
>  <input type="password" value="" name="password" id="password" size="32"
> maxlength="255" />
>  </td>
> </tr>
> <tr><td colspan="2">&nbsp;</td></tr>
>  <tr>
> <td>&nbsp;</td>
> <td align="left">
>  <input type="submit" name="submit" value="Login" />
> </td>
>  </tr>
> </table>
> </div>
>  </div>
> </form>
>
>
>
> On Wed, Jan 18, 2012 at 8:09 AM, Mark Furbee <markfur...@gmail.com> wrote:
>
> > Is that template mainpage.html?
> >
> > I'm not sure exactly what you mean is happening. When you open the login
> > page it takes you back to the home page? Also, I would add in the my_login
> > view that if they are already logged in to redirect them to another page
> > besides the login page. As your view is now, when they go to the login
> > page, while they are already logged in, it will allow them to log in again
> > as a different user. Perhaps that is intended, I just thought I'd point it
> > out.
> >
> > Mark
> >
> > On Tue, Jan 17, 2012 at 10:57 PM, coded kid <duffleboi...@gmail.com>wrote:
> >
> >> Yeah, I've done that, but its not working! Any help?
> >>
> >> On Jan 17, 10:37 pm, Mark Furbee <markfur...@gmail.com> wrote:
> >> > It means, don't use the "decorator" @login_required above your login
> >> view.
> >> > Your login view cannot require a login, because you'd never get to log
> >> in.
> >> > Chicken and egg.
> >> >
> >> >
> >> >
> >> > On Tue, Jan 17, 2012 at 2:34 PM, coded kid <duffleboi...@gmail.com>
> >> wrote:
> >> >
> >> > > Thorsten Sanders wrote:
> >> > > > With using
> >> >
> >> > > > @login_required decorator the user needs to be logged in to allow
> >> > > execution, don't makes much sense for a login :P
> >> >
> >> > > > Am 17.01.2012 22:23, schrieb coded kid:
> >> > > > > Hi guys, I�m having problem with my login form. The login form
> >> will
> >> > > > > redirect me to the next page even if I didn�t input anything in
> >> the
> >> > > > > username and password field. Also it can�t get the username of
> >> the
> >> > > > > registered users to verify if the user data is wrong or right.
> >> How can
> >> > > > > I get rid of this problem?
> >> > > > > Below are my code:
> >> > > > > In views.py
> >> > > > > from django.db import models
> >> > > > > from mymeek.meekme.models import RegisterForm
> >> > > > > from django.shortcuts import render_to_response
> >> > > > > from django.http import HttpResponse
> >> > > > > from django.template import RequestContext
> >> > > > > from django.http import HttpResponseRedirect
> >> > > > > from django.contrib.auth import authenticate, login
> >> > > > > from django.contrib.auth.decorators import login_required
> >> >
> >> > > > > @login_required
> >> > > > > def mylogin(request):
> >> > > > >      if request.method=='POST':
> >> > > > >          username= request.POST['username']
> >> > > > >          password= request.POST['password']
> >> > > > >          user=authenticate (username=username, password=password)
> >> > > > >          if user is not None:
> >> > > > >              if user.is_active:
> >> > > > >                  login(request, user)
> >> > > > >                  return HttpResponseRedirect('/logpage/')
> >> > > > >              else:
> >> > > > >                  return direct_to_template(request,'q_error.html')
> >> > > > >      else:
> >> > > > >          return render_to_response('mainpage.html')
> >> > > > > In my template:
> >> > > > > <html>
> >> > > > > <form action='' method="post">
> >> > > > > <table>
> >> > > > > <tr>
> >> > > > >    <td>{{form.username.label_tag}}</td>
> >> > > > >    <td>{{form.username}}</td>
> >> > > > > </tr>
> >> > > > > <tr>
> >> > > > >    <td>{{form.password.label_tag}}</td>
> >> > > > >    <td>{{form.password}}</td>
> >> > > > > </tr>
> >> > > > > </table>
> >> > > > > <input type="submit" value="Login" />
> >> > > > > </form>
> >> > > > > </html>
> >> > > > > Please help me out! Thanks.
> >> >
> >> > > --
> >> > > You received this message because you are subscribed to the Google
> >> Groups
> >> > > "Django users" group.
> >> > > To post to this group, send email to django-users@googlegroups.com.
> >> > > To unsubscribe from this group, send email to
> >> > > django-users+unsubscr...@googlegroups.com.
> >> > > For more options, visit this group at
> >> > >http://groups.google.com/group/django-users?hl=en.
> >>
> >> --
> >> You received this message because you are subscribed to the Google Groups
> >> "Django users" group.
> >> To post to this group, send email to django-users@googlegroups.com

-- 
You received this message because you are subscribed to the Google Groups 
"Django users" group.
To post to this group, send email to django-users@googlegroups.com.
To unsubscribe from this group, send email to 
django-users+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/django-users?hl=en.

Reply via email to