Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

239
Vistas
KeyError en /login u'message'
def loginUser(request): if request.method != 'POST': return redirect('/') attempt = User.objects.validateUser(request.POST) if attempt['status'] == True: request.session['user_id'] = attempt['user'].id return redirect('/books') else: messages.add_message(request, messages.ERROR, attempt['message'], extra_tags="login") return redirect('/')

KeyError en /login u'message' Método de solicitud: URL de solicitud POST: http://127.0.0.1:8000/login Versión de Django: 1.11 Tipo de excepción: KeyError Valor de excepción:
tu'mensaje'

over 4 years ago · Santiago Trujillo
2 Respuestas
Responde la pregunta

0

Dice que el attempt diccionario no tiene el message clave. Aquí tienes el diccionario:

 attempt = User.objects.validateUser(request.POST)

En este punto, inspeccione el valor del attempt (imprimir en la consola o afirmar Falso y negociar de forma interactiva en el navegador). Si no tiene el valor para el message clave, puede proporcionarlo aquí (método validar usuario) o, deje que sea opcional, y cambie la forma en que accede al valor en:

 messages.add_message(request, messages.ERROR, attempt.get('message', 'default_msg'), extra_tags="login")

Tenga en cuenta que los cambios son de:

 attempt.['message']

para

 attempt.get('message', 'default_msg')
over 4 years ago · Santiago Trujillo Denunciar

0

Puedes usar estas dos formas.

 # either try: message = attempt['message'] except KeyError: message = 'default message or your own message' # or message = attempt.get('message', 'default message you need to set it yourself') # after that just use the message variable messages.add_message(request, messages.ERROR, message, extra_tags="login")
over 4 years ago · Santiago Trujillo Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda