[pyar] [Django] UnicodeDecodeError

Pedro Jose Pezzarini jose2190 en gmail.com
Mar Ago 5 13:41:37 ART 2014


Muchas gracias Natalia Bidart, tu email es de excelente ayuda, iré a la
charla de Facundo para sacarme la espina.

Saludos y gracias por tu tiempo en responder mi mensaje.


El 5 de agosto de 2014, 13:31, Natalia Bidart <nataliabidart en gmail.com>
escribió:

> 2014-08-05 12:56 GMT-03:00 Pedro Jose Pezzarini <jose2190 en gmail.com>:
>
> Hola lista, tengo una eterna y constante espina con django (1.6)
>> relacionado a los textos no ascii.
>>
>> En algunas vistas aparecen los acentos, ntildes etc sin problemas, pero
>> en otras no, y genera el error UnicodeDecodeError: 'ascii' codec can't
>> decode byte .....
>>
>> ¿Alguien tiene alguna experiencia con esta situación?
>>
>> Anexo:
>>
>> Todos los archivos.py están con la codificación utf-8 como primera linea.
>>
>
> Hola Pedro,
>
> Primero que nada, te recomendaría que mires la charla de Facundo Batista
> sobre "Entendiendo unicode", si es que aún no la viste. Asumo por la
> consulta que estás con Python 2 (con Python 3 la historia es completamente
> distinta).
>
> El problema que estás teniendo es que estás mezclando, dentro de tu
> código, objetos unicode con cadenas de bytes encodeadas con utf-8 (son dos
> cosas bien distintas). Django opera con objetos unicode para todo lo que se
> refiere a cadenas de texto.
>
> El hecho de poner en tu código fuente "# coding: utf-8" indica que vos
> sabés que tu editor está guardando los archivos a disco encodeados con
> utf-8, pero todas las cadenas de texto del archivo son cadenas de bytes
> (excepto que vos crees los objetos unicode explícitamente).
>
> Lo que más probablemente necesites, (y que luego de ver la charla debería
> ser más simple de entender) es usar objetos unicode dentro de los .py. Para
> eso, te recomiendo, en todo archivo python usar:
>
> from __future__ import unicode_literals
>
> y usar b'' cuando realmente necesites bytes (o decode con el encoding
> adecuado).
>
> _______________________________________________
> 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
>
------------ próxima parte ------------
Se ha borrado un adjunto en formato HTML...
URL: <http://listas.python.org.ar/pipermail/pyar/attachments/20140805/6d7163be/attachment.html>


More information about the pyar mailing list