Re: [Django-es] ¿Como hacer un select que depende de otro a partir del modelo?

1,201 views
Skip to first unread message

Ricardo Azpeitia Pimentel

unread,
Jun 29, 2014, 11:35:18 PM6/29/14
to djan...@googlegroups.com
De parte del backend puedes hacer una, vista que reciba uno o mas parametros. Y cada parámetro es el pk del item seleccionado.

Ejemplo: url: paises/1/ devolveria una lista de estados del pais con pk=1. paises/1/2/ devolveria una lista de regiones del pais 1 con el estado 2. Y así sucesivamente.

Para hacer vista de este tipo (solo GET) es solo otra vista mas, que solo muestra json + algunas otras cabeceras, ya hay muchos métodos para hacer esto pero la idea es la misma.

Para el resto (y la razon por la que nadie te ha contestado) es porque casi todo es del lado del frontend usando javascript. Puedes hacerlo con angularjs, jquery, js vanilla, lo que tu quieras. (Si, para esta parte seria mejor si preguntas en alguna lista de js). 


El 29 de junio de 2014, 7:08, loro102 <lor...@gmail.com> escribió:
Buenas, me gustaria hacer un select o un combo box que coje los datos de la base de datos, el primer select es fijo ya que lo coje de toda la tabla de model pero el segundo select quiero que me filtre cuando se escoja algo en el primer select he mirado como realizarlo, y me gustaria hacerlo con ajax pero no tengo ni idea de donde poner el codigo ajax  y no se si habra algun añadido que pueda servir. He mirado por ahi y encontre algo que me podria servir pero no logro hacerlo funcionar y es mas no entiendo la documentacion ya que no me aclara mucho.El añadido en cuestion se llama django selectable esta es la web donde esta la documentacion http://django-selectable.readthedocs.org/en/v0.8.X/index.html

--
--
Ha recibido este mensaje porque está suscrito a Grupo "Grupo de Usuarios del Framework Django de habla hispana" de Grupos de Google.
Si quieres publicar en este grupo, envía un mensaje de correo
electrónico a djan...@googlegroups.com
Para anular la suscripción a este grupo, envíe un mensaje a django-es-...@googlegroups.com
Para obtener más opciones, visita este grupo en http://groups.google.com.bo/group/django-es.
---
Has recibido este mensaje porque estás suscrito al grupo "Django-es" de Grupos de Google.
Para anular la suscripción a este grupo y dejar de recibir sus mensajes, envía un correo electrónico a django-es+...@googlegroups.com.
Para acceder a más opciones, visita https://groups.google.com/d/optout.

Hiko hitokiri

unread,
Jun 30, 2014, 12:28:44 AM6/30/14
to djan...@googlegroups.com
si lo vas a  hacer con ajax no necesitas lo de los numeros en las url solo tomas el parametro por request.GET.get('pais') y debuelves la consulta de las provincias  o lo que sea

loro102

unread,
Jun 30, 2014, 5:09:59 AM6/30/14
to djan...@googlegroups.com
gracias por la respuesta ya lo he resuelto a mi manera usando los parametros pero el problema es que tiene que actualizar la pagina cada vez que cambia el primer select, y solo quiero que actualice el select,asi que gracias,ya buscare la manera de usar codigo ajax ,mire en la documentacin oficial aparece como usar el codigo pero no aclara donde ni como y el ejemplo es una *da

Jhónatan Mosquera

unread,
Jun 30, 2014, 11:09:53 AM6/30/14
to djan...@googlegroups.com
Creo que esto te servira http://www.dajaxproject.com/forms/ solo tendrias que darle forma a los forms para que cumplas lo que estas queriendo hacer.


El 30 de junio de 2014, 4:09, loro102 <lor...@gmail.com> escribió:
gracias por la respuesta ya lo he resuelto a mi manera usando los parametros pero el problema es que tiene que actualizar la pagina cada vez que cambia el primer select, y solo quiero que actualice el select,asi que gracias,ya buscare la manera de usar codigo ajax ,mire en la documentacin oficial aparece como usar el codigo pero no aclara donde ni como y el ejemplo es una *da

--
--
Ha recibido este mensaje porque está suscrito a Grupo "Grupo de Usuarios del Framework Django de habla hispana" de Grupos de Google.
Si quieres publicar en este grupo, envía un mensaje de correo
electrónico a djan...@googlegroups.com
Para anular la suscripción a este grupo, envíe un mensaje a django-es-...@googlegroups.com
Para obtener más opciones, visita este grupo en http://groups.google.com.bo/group/django-es.
---
Has recibido este mensaje porque estás suscrito al grupo "Django-es" de Grupos de Google.
Para anular la suscripción a este grupo y dejar de recibir sus mensajes, envía un correo electrónico a django-es+...@googlegroups.com.
Para acceder a más opciones, visita https://groups.google.com/d/optout.



--
------------------------------------------
Jhónatan Mosquera Tabra

Jhónatan Mosquera

unread,
Jun 30, 2014, 2:34:18 PM6/30/14
to djan...@googlegroups.com
O también puedes ver como es que usa ajax en este ejemplo https://bitbucket.org/simuder/ubigeoperu/src

loro102

unread,
Jul 1, 2014, 11:46:41 AM7/1/14
to djan...@googlegroups.com
muchas gracias esto ya esta solucionado

Enrique Villafañe

unread,
Aug 30, 2014, 8:23:17 PM8/30/14
to djan...@googlegroups.com
Hola, porfavor me gustaria me explicaras como lo lograste, soy nuevo en la programacion y mas aun en Django. quiero hacer esto en una aplicacion que estoy creando y no encuentro como hacerlo. Espero tu ayuda y gracias

YusufSalahAdDin

unread,
Sep 2, 2014, 11:40:20 AM9/2/14
to djan...@googlegroups.com
En otro lado lo preguntaron pero sin usar ajax, este me sirve para mi pròximo proyecto, pero para el de ahora quiero que el admin por defecto pueda hacer esto con combobox, puedes explicarme como?
Reply all
Reply to author
Forward
0 new messages