PAMI: Aprendiendo DJANGO con ejemplos(2): Muestrame información

Fuente: http://www.kunxi.org/archives/2007/09/learning-django-by-example2-show-me-your-data/

Sigo con mis traducciones sobre Django.

En el ultimo apunte, hicimos un rápido (y feo) prototipo para que Gelman funcionara. En este apunte, quiero usar XSLT para lo que necesitemos.

Si nos has probado XSLT, revisa XSLT (for dummies o la referencia oficial). XSLT es una potente herramienta, si solo te interesa la extracción de datos, deberías comparar los esfuerzos de parsear XML, con PyAWS.

Es simple y muy estúpido, desde que AWS (Amazon WebServices) soporta tanto consultas por ISBN o busquedas por Keyword, nosotros podemos combinar la entrada de dos cajas de texto como si fuera una y enviar diferentes peticiones validando el ISBN basándonos en el conocimiento de AWS. Check r12 para la implementacion, la imagen:
Add book by search

En Check r14, Intentaremos probar dojo.query como alternativa a jQuery, es muy guay referenciar a los objetos usando sintaxis CSS.

JavaScript:
  1. dojo.forEach(dojo.query(“#book_form input[@class=incoming]), function(item) {
  2.                if (item.value != “”) {
  3.                        formdata.push(cache[i]);
  4.                }
  5.                i++;
  6.      });

En el anterior fragmento de codigo, cache contiene los objetos JSON de la petición a AWS, si un fichero es adjuntado para enviar (incoming) [No termino de entenderlo, la verdad] (el upload no funciona todavía, de momento utilizaremos como marca), el meta data correspondiente es recogido en el formdata. La ultima pregunta es como enviamos esto al servidor.

JSON es soportado por ambos lados (cliente y servidor) por ejemplo dojo.json y django.utils.simplejson. En el lado del cliente, serializaremos el javascript como una cadena de texto JSON:

JavaScript:
  1. dojo.xhrPost({
  2.                 url: dojo.byId(“book_form”).action,
  3.                 content: { items: dojo.toJson(formdata) },
  4.         }).addCallback(function(response) {

Y en el lado del servidor, cargaremos los objetos Python desde la cadena de texto JSON. Check r16 para la implementación.

PYTHON:
  1. items = simplejson.loads(request.POST[‘items’])

En el próximo capitulo podríamos hablar sobre como manipular base de datos usando la django's database API

1 Comment so far

  1. Joshua on February 4th, 2009

    Hola!

    Desde hace poco me he estado introduciendo a lo que es el gran mundo de django. Soy inexperto y he estado revisando tus post sobre django pero no encuentro lo que necesito y recurro a ti.

    Es que en la documentación de django ingresan al shell del proyecto y ahí ingresan “a mano” un objeto a la base de datos (como ejemplo). Lo que he intentado, es escribir un script que lea un archivo de texto (con datos) y lo ingrese de la forma que explican ahí. Sin embargo, no se que importar al script para acceder y poder ingrasar los registros.

    Uno de los cuantos errores que me arroja es:
    DJANGO_SETTINGS_MODELUE is undefined

    Puedes orientarme?

    Gracias de antemano, saludos.

    PD: Felicitaciones por tu hijo!

Leave a reply