Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

230
Visualizações
Obtener la clave del diccionario de vista de Django en Javascript, pero en lugar de considerarlo una cadena, considera un nombre de variable

Estoy haciendo un proyecto en Django. En mis vistas, envío datos a las páginas HTML con diccionarios. Puedo acceder fácilmente a esos datos en HTML, pero cuando trato de acceder a ellos en Javascript no puedo porque Javascripts piensa que es un nombre de variable.

Por ejemplo, tengo una página de inicio de sesión. Si las credenciales están mal, las envío a la misma página y les digo que el usuario o la contraseña están mal. Quiero mantener el nombre de usuario escrito anteriormente en el formulario, para que la persona solo tenga que volver a escribir la contraseña. Envío el nombre de usuario desde la vista al Javascript, pero no puedo acceder a él.

Mi código de vista:

 def login_form(request): assert isinstance(request, HttpRequest) if 'username' and 'password' in request.POST: user = request.POST['username'] passw = request.POST['password'] if rightcredentials(user,passw): tparams = { 'message': 'login successful', } return render(request, 'about.html', tparams) else: tparams = { 'login' : 'failure1', 'username_info' : user } return render(request, 'login_form.html', tparams)

Código JavaScript:

 {% if login == 'failure1' %} <form action="." method="post"> {% csrf_token %} <div class="program-info"> <h3 class="program-title">Sign Into Your Account</h3> <p>Wrong Username or password</p> <div class="form-group"> <input type="text" value="" class="form-control" name="username" id="username" placeholder="Username"> </div> <div class="form-group"> <input type="password" class="form-control" name="password" placeholder="Password"> </div> <button type="submit" class="btn btn-primary">Log In</button> </div> </form> <script type="text/javascript"> {% autoescape off %} var paramvalue = {{ username_info }} {% endautoescape %} document.getElementById("username").value = paramvalue; </script> {%endif%}

Después de insertar el nombre de usuario: 'pedro' y la contraseña incorrecta en el formulario, aparece el siguiente error:

 Uncaught ReferenceError: pedro is not defined

¿Hay alguna forma de acceder a la cadena username_info o de convertir el nombre de la variable en una cadena?

about 4 years ago · Santiago Trujillo
1 Respostas
Responde à pergunta

0

Envolver {{ }} entre comillas debería funcionar

 {% autoescape off %} var paramvalue = "{{ username_info }}" {% endautoescape %}
about 4 years ago · Santiago Trujillo Relatório
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda