Foros del Web » Programando para Internet » Python »

[SOLUCIONADO] Sistema de login global

Estas en el tema de Sistema de login global en el foro de Python en Foros del Web. Hola a todos Estoy probando el sistema de login de Django (django.contrib.auth.views.login) en mi proyecto y me ha surgido una pequeña duda: Tengo declarada las ...
  #1 (permalink)  
Antiguo 21/06/2014, 05:20
Avatar de kojicomics  
Fecha de Ingreso: junio-2013
Mensajes: 49
Antigüedad: 10 años, 10 meses
Puntos: 1
Sistema de login global

Hola a todos

Estoy probando el sistema de login de Django (django.contrib.auth.views.login) en mi proyecto y me ha surgido una pequeña duda:

Tengo declarada las siguiente url en mi aplicación principal:

"apps/index/urls.py"
Código Python:
Ver original
  1. url(r'^login/$', 'django.contrib.auth.views.login',
  2.          {'template_name': 'index/index.html'},
  3.          name='login'),

El formulario de login lo he creado en un template de forma que se pueda acceder a él desde cualquier url, pero sólo funciona si ésta es "sitioweb/login/"

Mi pregunta es: ¿Cómo puedo hacer que el formulario funcione desde cualquier url y que el template_name sea siempre la página que el usuario está viendo en ese momento?

El código del login dentro del template es el siguiente:

Código HTML:
Ver original
  1. <aside class='right'>
  2.     <article>
  3.         <h3>Perfil</h3>
  4.         <div class='form-div'>
  5.         {% if user.is_authenticated %}
  6.             <h4>Bienvenido {{user.username|capfirst}}</h4>
  7.             <figure class='avatar'>
  8.                 <img src='' alt='{{user.username}}' />
  9.             </figure>
  10.             <a href=''>Editar perfil</a>
  11.             </br>
  12.             <a class='button' href='/logout/'>Cerrar sesión</a>
  13.         {% else %}
  14.             <h4>Inicia sesión</h4>
  15.             <form method='POST'>
  16.             {% csrf_token %}
  17.                 <p><input name='username' type='text' id='inputEmail' placeholder='Usuario' /></p>
  18.                 <p><input name='password' type='password' id='inputPassword' placeholder='Contraseña' /></p>
  19.                 <p><button class='button' type='submit'>Log In</button></p>
  20.                 <p><a class='button' href='/signin/'>Regístrate</a></p>
  21.             </form>
  22.         {% endif %}
  23.         </div>
  24.     </article>

Última edición por razpeitia; 21/06/2014 a las 08:20
  #2 (permalink)  
Antiguo 21/06/2014, 08:21
Avatar de razpeitia
Moderador
 
Fecha de Ingreso: marzo-2005
Ubicación: Monterrey, México
Mensajes: 7.321
Antigüedad: 19 años, 1 mes
Puntos: 1360
Respuesta: Sistema de login global

Código Python:
Ver original
  1. <form method='POST' action="{% url 'login' %}">
Y listo.
  #3 (permalink)  
Antiguo 21/06/2014, 10:29
Avatar de kojicomics  
Fecha de Ingreso: junio-2013
Mensajes: 49
Antigüedad: 10 años, 10 meses
Puntos: 1
Respuesta: Sistema de login global

Gracias, no me había dado cuenta

Etiquetas: django, login
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 14:43.