[pyar] Exportar a pdf desde Pylons 1.0 y mako

Mariano Mara mariano.mara en gmail.com
Jue Jun 10 14:36:44 ART 2010


Excerpts from Emiliano Dalla Verde Marcozzi's message of Thu Jun 10 13:22:59 -0300 2010:
> Buen día lista!,
> Tengo varios formularios en Pylons 1.0, utilizando mako como sistema de
> plantillas, en el cual tomo el input del usuario, hago un par de cosas y
> devuelvo informes del cual quiero exportar a Pdf, mandar por mail como html
> y
> todas esas chucherias :P ...
> 
> Mi controlador es del tipo:
> 
> def form_input(self):
>     return render('/forms/input.mako')
> 
> En input.mako, el action del form llama al metodo form_result del
> controlador,
> el cual seria algo como:
> 
> def form_result(self):
>     ... proceso datos ...
>     ... asigno c.variables ...
>     return render('/forms/result.mako')
> 
> Encontre una lib muy copada llamada xhmtl2pdf que toma los css y el html de
> una pagina, y te saca con sublime magia un pdf muy bonito. Tambien encontre
> que puedo hacer esto con una parte de Qt, la cuestion ... como hago para
> pasarle el html resultante ?
> 
> Podria hacer algo como return (html2pdf(render('/forms/result.mako'))) pero
> mi
> idea es poner un botoncito en cada template, se renderiza el informe y si
> uno
> clickea el botoncito, se devuelve el pdf.
> 
> Me tiran una punta de como encarar esto ? muchas gracias de antemano ^^
> 
La primera idea que me viene a la mente sería:
Agregale el ícono de pdf al template y definile como acción que si es
presionado, llame al controlador de nuevo (donde habrás agregado un
parametro para decidir si tiene que retornar como html o como pdf) y en
ese caso devuelva el resultado en pdf. Para evitar el reprocesamiento
del controlador, el render tiene parametros adicionales para definir
como queres cachear el template resultante o podes decorarlo con beaker_cache por
una cantidad de tiempo. Más sobre caching en pylons podés encontrar aca:
[1]

Mariano

[1]
http://pylonshq.com/docs/en/1.0/caching/#using-cache-keywords-to-render



More information about the pyar mailing list