ok ya entendi mira esto es lo que yo hago. habra una cosa mas elegante pero yo lo hago asi jajajaja
def vista_login(request):
#esta parte recolecta lo de next para hacer la redireccion claro si hay un next
try:
meta = request.META['QUERY_STRING'].split('=')[1][:-1]
except IndexError:
meta = None
foot = False
vista = 'Inicio de Seción'
error = ""
if request.method == 'POST':
formulario = LoginForm(request.POST)
if formulario.is_valid():
usuario = formulario.cleaned_data['usuario']
contrasena = formulario.cleaned_data['contrasena']
#paso de cotejamiento de el usuario y la contraseña ingresados en el formulario
user = authenticate(username = usuario, password = contrasena)
if user:
if user.is_active:
login(request, user)
#esta parte redirecciona a la ista de donde fue enviado y si no fue redireccionado para login simplemente manda a pizarra
if meta:
return HttpResponseRedirect(meta)
else:
return HttpResponseRedirect('/pizarra')
else:
#mandamos el error para decir que no es bueno el usuario o la contraseña
error='El usuario o la contraseña son erroneos, Por favor ingrese los datos correctamente'
else:
formulario = LoginForm()
ctx ={'nombre_sistema': settings, 'foot': foot, 'vista': vista , 'formulario': formulario, 'error': error}
return render_to_response('index.html', ctx,context_instance = RequestContext(request))