Django y Ext JS

255 views
Skip to first unread message

Sebastián Gustavo Galiano

unread,
Jun 11, 2010, 5:19:26 PM6/11/10
to djan...@googlegroups.com
Hola a todos.
Estoy por desarrollar una aplicación cliente/servidor para una
intranet con Django como back-end y ExtJs como front-end. La
aplicación correría del lado cliente con un navegador personalizado lo
cual permitiría como alternativa disponer de clientes no tan delgado y
poder cargar HTML local estático y hacer llamados a procedimientos
remotos (con AJAX por ejemplo). También abarcaría algunos CRUD
sencillos y no tanto.
Estuve investigando (y probando) bastante pero todavía no decido cual
sería la mejor manera de hacer este puente, con un rendimiento
aceptable y de una manera que no requiera tantos hacks. Por eso
escribo para ver si me pueden dar una mano.
De las maneras que hallé:
a) Con un serializer JSON y HttpResponde con
mimetype="text/javascript" (referencia django-extjs [1]) ->
b) A través de Ext.Direct (referencia  django-extdirect [2]) -> Mucho
no entendí pero parece estar maduro y usable
c) Creando un API RESTful (referencia django-rest-interface [3]) ->
¿Alguien tuvo alguna experiencia similar o algún caso exitoso de
implementación intensiva Django/ExtJs? ¿Que recomendarían?
Desde ya muchísimas gracias.

PD: Utilizaría django.contrib.admin pero se queda corto para algunos
requerimientos particulares en este caso, sobre todo con AJAX


[1] http://github.com/revolunet/django-extjs
[2] http://github.com/gsancho/extdirect.django
[3] http://code.google.com/p/django-rest-interface/

--
Sebastián Galiano
Desarrollador Web Freelance
http://www.sebastiangaliano.com.ar
Jabber ID: sgal...@gmail.com
MSN: sgal...@gmail.com
Skype: sebastian.gustavo.galiano

Arkanus

unread,
Jun 15, 2010, 9:50:03 AM6/15/10
to Django-es
Justamente para eso es django-extjs, para crear un "puente" por lo
general json entre django y extjs, extdirect parece mas poderoso, pero
mas complejo (o la documentación es mas enredada).
Ahora si quieres usar un api restful, no hay problemas, pero si, como
sospecho, haces mapeos de objetos/queysets->componentes extjs entonces
te recomiendo uses uno de los proyectos que te mencioné

On 11 jun, 17:19, Sebastián Gustavo Galiano <sgali...@gmail.com>
wrote:
> Jabber ID: sgali...@gmail.com
> MSN: sgali...@gmail.com
> Skype: sebastian.gustavo.galiano

Gustavo Henrique

unread,
Jun 26, 2010, 10:16:56 PM6/26/10
to djan...@googlegroups.com

Sebastián Gustavo Galiano

unread,
Jun 27, 2010, 12:35:49 AM6/27/10
to djan...@googlegroups.com
El día 26 de junio de 2010 23:16, Gustavo Henrique
<gusta...@gmail.com> escribió:

Gracias a ambos por la respuesta. Saludos.


--
Sebastián Galiano

Santiago Videla

unread,
Jul 20, 2010, 5:43:25 PM7/20/10
to Django-es
Hola,

Perdon por la respuesta tardia... Si seguis necesitando una mano con
ExtJS y Django, quizas te puedo ayudar. Yo vendria a ser el creador de
extdirect.django, asique si lo estas probando o hay algo que no se
entienda, soy todo oidos.

Saludos

On 27 jun, 01:35, Sebastián Gustavo Galiano <sgali...@gmail.com>
wrote:
> El día 26 de junio de 2010 23:16, Gustavo Henrique
> <gustavo...@gmail.com> escribió:
>
> > un ejemplo sencillo:
>
> >http://github.com/gustavohenrique/Django-Cash
>
> > --
> > Gustavo Henrique
> > blog.gustavohenrique.net
>
> Gracias a ambos por la respuesta. Saludos.
>
> --
> Sebastián Galiano

Rene Vielma M

unread,
Jul 20, 2010, 7:24:30 PM7/20/10
to djan...@googlegroups.com
2010/6/26 Gustavo Henrique <gusta...@gmail.com>:

Gustavo: el usuario y contraseña que están por defecto en esta
demostración, no son correctos

www.gustavohenrique.net/django_cash

podrías compartirlos, para observar la demostración

gracias

>
> --
> Gustavo Henrique
> blog.gustavohenrique.net


Atte.
René Vielma M.

Sebastián Gustavo Galiano

unread,
Jul 26, 2010, 6:30:54 PM7/26/10
to djan...@googlegroups.com
El día 20 de julio de 2010 18:43, Santiago Videla
<santiag...@gmail.com> escribió:

> Hola,
>
> Perdon por la respuesta tardia... Si seguis necesitando una mano con
> ExtJS y Django, quizas te puedo ayudar. Yo vendria a ser el creador de
> extdirect.django, asique si lo estas probando o hay algo que no se
> entienda, soy todo oidos.

Muchas gracias por la disponibilidad.
Al final me decidí por empezar a ver Ext.Direct y extdirect.django;
por ahora muy tímidamente porque no tengo mucha experiencia en ExtJs y
primero esto viendo eso. Seguramente cuando avance un poco vendrán las
dudas y las consultas.
Por si las moscas, ¿no hay por ahí ejemplo un poco más avanzado del
uso de extdirect.django?
Hasta luego.

--
Sebastián Galiano

Santiago Videla

unread,
Jul 27, 2010, 1:12:19 PM7/27/10
to Django-es
Hola,

> Muchas gracias por la disponibilidad.
> Al final me decidí por empezar a ver Ext.Direct y extdirect.django;

Buenisimo! reportes de bugs y/o propuestas de mejoras son bienvenidas.
Te aconsejo que uses la version que esta en el repositorio de github,
que tiene varios bugfixes y algunas cosas nuevas con respecto a la
version 0.3 que esta en pypi.

> por ahora muy tímidamente porque no tengo mucha experiencia en ExtJs y
> primero esto viendo eso. Seguramente cuando avance un poco vendrán las
> dudas y las consultas.
> Por si las moscas, ¿no hay por ahí ejemplo un poco más avanzado del
> uso de extdirect.django?

Mas avanzado con respecto a que decis? La idea es que los posibles
casos de uso de extdirect.django estan casi todos contemplados en los
doctests (tiene un 94% de cobertura)

http://github.com/gsancho/extdirect.django/blob/master/README.txt
http://github.com/gsancho/extdirect.django/tree/master/extdirect/django/doctests

Ext.Direct no es mas que un protocolo para comunicar el cliente
JavaScript con el Servidor que corresponda (en este caso, Django). Lo
que te da extdirect.django es la implementacion de ese protocolo, de
la manera mas transparente que se me ocurrio y pude. Ademas tiene
algunas clases "helper" (ExtDirectStore, ExtDirectCRUD) que te ahorran
repetir el mismo codigo para algunos casos de uso, mas o menos
comunes, como son cargar un Ext.data.Store con el resultado de una
consulta en la base de datos, o el clasico CRUD sobre una tabla.

Quizas si me decis algo concreto que estes queriendo hacer y no te
salga, te puedo ayudar un poco mas.

Saludos


> Hasta luego.
>
> --
> Sebastián Galiano
Reply all
Reply to author
Forward
0 new messages