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

196
Vistas
Django ajax url no lee

Tengo un archivo ajax que llama a la url de urls.py que obtiene los datos json de views.py pero cuando ejecuto el servidor simplemente muestra Not Found:/dept-json/

Logré que funcionara usando el fragmento de django {% url 'accounts:dept-json'%}

Sin embargo, no quiero esto, ya que necesito obtener y pasar la variable de los dept-json data a otra URL de ajax, que es:

 url:`/prog-data/${selectedDept}/`

He leído aquí que no puedes pasar variables en ajax como {% url 'accounts:prog-json' department%}

¿Cómo me las arreglo para hacer esto?

aquí está mi código:

principal.js

 //First ajax $.ajax({ type: 'GET', url: "/dept-json/", // url: "{% url 'accounts:dept-json'%}", success: function(response){ console.log(response) }, error: function(error){ console.log(error) } }) //Second ajax $.ajax({ type: 'GET', url: `/prog-data/${selectedDept}/`, success: function(response){ console.log(response) }, error: function(error){ console.log(error) } })

urls.py

 path('dept-json/', get_json_dept_data, name='dept-json'), path('prog-json/<str:department>/', get_json_prog_data, name='prog-json'),

vistas.py

 def get_json_dept_data(request): qs_val = list(Department.objects.values()) return JsonResponse({'data':qs_val}) def get_json_prog_data(request, *args, **kwargs): selected_department = kwargs.get('department') obj_prog = list(Program.objects.filter(department__name=selected_department).values()) return JsonResponse({'data':obj_prog})
over 4 years ago · Santiago Trujillo
1 Respuestas
Responde la pregunta

0

Debe enviar los datos en su solicitud ajax así:

 $.ajax({ url: "{% url 'accounts:prog-json'%}", data: { 'department': selectedDept }, success: function(response){ console.log(response) }, error: function(error){ console.log(error) } })

Y luego, en su vista, puede acceder a ese argumento desde la solicitud:

 def get_json_prog_data(request): selected_department = request.GET.get('department') obj_prog = list(Program.objects.filter(department__name=selected_department).values()) return JsonResponse({'data':obj_prog})

No creo que necesite el parámetro en su URL, por lo que debería poder eliminarlo ya que estamos enviando los datos en la solicitud ajax.

 path('prog-json/', get_json_prog_data, name='prog-json'),
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