[pyar] [django] property en list_display

Juan Cruz Piñero jpinero en fi.uncoma.edu.ar
Vie Feb 24 14:15:35 ART 2017


No es stack overflow, pero +1 a la respuesta de Juan Carriza. Por ahi pasa
la cuestion: En el list_display enchufa las representaciones de los objetos
de datos que le metes (string/unicode dependiendo de la version de python.)
Si metes caracteres que en HTML no son significativos como los espacios en
blanco antes del texto, lo "pasa por alto". Tenes que pasar el html
formateado si queres espacios antes o cosas mas particulares

El 24 de febrero de 2017, 12:47, Juan Carizza <juan.carizza en gmail.com>
escribió:

> Hola Daniel, el tema es que hacer un print formateado en la consola es
> distinto a mostrarlo en HTML. Tuve un problema similar y hay dos opciones
> (o al menos lo que encontré):
>
> 1. Sobre escribir el template que lista los modelos en el admin [0]
> 2. Que el property retorne un HTML.
>
> Como me parecia mucho sobre escribir el template para solo mostrar un
> title opte por la opción 2:
>
> @property
> def fechas(self):
>     tpl = """
>     <span title="{}">Ver fechas</span>
>     """
>     if self.instancias.all().count() == 1:
>         return self.instancias.all()[0].fecha.strftime('%d %b %Y')
>     fafafa = tpl.format('\n'.join([instancia.fecha.strftime('%d %b %Y')
> for instancia in self.instancias.all()]))
>     return format_html(fafafa)
>
> Ahí vas poder mostrarlo como quieras. Quizá con la etiqueta <pre>$
> 9.83</pre>
>
> No es una solución elegante pero cumple con lo que tenía que hacer.
>
>
> [0] https://docs.djangoproject.com/en/dev/ref/contrib/admin/#
> overriding-admin-templates
>
> El vie., 24 feb. 2017 a las 12:26, Gustavo Campanelli (<gedece en gmail.com>)
> escribió:
>
>> 2017-02-24 11:45 GMT-03:00 Daniel <dmlistapython en gmail.com>:
>>
>> tengo esta código  en un modelo: http://pastebin.com/7mkt1eWe
>>
>> en el admin.py del model tengo
>> list_display = ([otros campos],  'precio_ventastr')
>>
>> en el print de debug veo:
>> *$          9.83*  (tal cual lo espero)
>> pero el admin me lo muestra
>> *$ 9.83  *(sin tabular)
>> y no se porqué, en dónde se modifica ni como solucionarlo.
>>
>>
>>
>>
>> _______________________________________________
>> pyar mailing list pyar en python.org.ar
>> http://listas.python.org.ar/listinfo/pyar
>>
>> PyAr - Python Argentina - Sitio web: http://www.python.org.ar/
>>
>> La lista de PyAr esta Hosteada en USLA - Usuarios de Software Libre de
>> Argentina - http://www.usla.org.ar
>>
>>
>>
>> ¿Podrías mostrar la parte donde lo llamas y recibis la respuesta?
>>
>> Gedece
>>
>> _______________________________________________
>> pyar mailing list pyar en python.org.ar
>> http://listas.python.org.ar/listinfo/pyar
>>
>> PyAr - Python Argentina - Sitio web: http://www.python.org.ar/
>>
>> La lista de PyAr esta Hosteada en USLA - Usuarios de Software Libre de
>> Argentina - http://www.usla.org.ar
>
>
> _______________________________________________
> pyar mailing list pyar en python.org.ar
> http://listas.python.org.ar/listinfo/pyar
>
> PyAr - Python Argentina - Sitio web: http://www.python.org.ar/
>
> La lista de PyAr esta Hosteada en USLA - Usuarios de Software Libre de
> Argentina - http://www.usla.org.ar
>



-- 
Juan Cruz Piñero
------------ próxima parte ------------
Se ha borrado un adjunto en formato HTML...
URL: <http://listas.python.org.ar/pipermail/pyar/attachments/20170224/ab05a2ac/attachment-0001.html>


Más información sobre la lista de distribución pyar