Question

Je préavis AVONS chaque fois que je mis:

import pdb; pdb.set_trace()

dans le projet Mon espagnol Django, si j'ai un caractère Unicode spécifique dans une chaîne comme:

Gracias por tu colaboración

Je reçois UnicodeDecodeError avec un « ordinal dans la plage (128) » dans une fenêtre de débogage Django. Le problème est que je ne peux pas facilement déboguer mon application. D'autre part Si je ipdb je reçois des choses comme:

ERROR - failed to write data to stream: <open file '<stdout>', mode 'w' at 0x7f3d43e34140>

J'ai googlé pour trouver une solution, mais il semble que je suis le seul à avoir ce numéro:)

Était-ce utile?

La solution

J'ai découvert qu'un autre programmeur avait ajouté ceci au début du fichier vues, cette pause pdb et le comportement ipdb, comme je l'ai:

import sys, codecs
sys.stdout = codecs.getwriter('utf-8')(sys.stdout)

La suppression ou ces lignes fixes commenter la question, merci.

Autres conseils

En règle générale, que les émissions d'erreur si vous avez des caractères non-ascii dans votre fichier (Mabe dans un commentaire ou une chaîne). Si vous essayez d'ouvrir sans ipdb / pdb Django affiche un retraçage

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top