2010-06-21 14 views
0

J'ai une application Django qui exécute un outil et affiche les résultats de l'outil à l'utilisateur en utilisant un modèle Django. Parfois, Django n'affiche pas les résultats. Il ne se plaint de rien, il n'affiche pas les résultats. Je suppose que c'est quelque chose à voir avec un ou plusieurs des personnages dans les résultats étant illégal en ce qui concerne Django. Comment puis-je obtenir plus d'informations sur ce que Django n'aime pas? Aussi, existe-t-il une méthode que je peux utiliser pour filtrer les "mauvais" caractères? Les résultats sont normalement juste beaucoup de texte. Ils contiennent des trucs confidentiels de l'entreprise, donc je ne peux malheureusement pas donner un exemple. J'ai DEBUG défini sur True et TEMPLATE_DEBUG défini sur DEBUG.Django: Comment puis-je déterminer pourquoi Django n'affiche pas certaines données?

MISE À JOUR:

j'ai ajouté un code pour filtrer tous les caractères avec une valeur décimale supérieure à 127 et cela fonctionne maintenant.

Répondre

0

Vous pouvez essayer d'utiliser les méthodes de codage django intégrées pour supprimer les caractères non autorisés.

from django.utils.encoding import smart_str 

smart_str(your_string) 
+0

Essayé cela mais il ne s'est pas débarrassé du (des) caractère (s) illégal (s). – FunLovinCoder

1

Si vous utilisez le serveur de développement, placez un point d'arrêt avec pdb et voyez ce qui se passe. Ou imprimez la chaîne que vous pensez avoir de "mauvais" caractères. Si vous n'utilisez pas le serveur de développement, vous pouvez utiliser le module de journalisation Python pour consigner la chaîne que vous obtenez de l'outil.

Vous êtes peut-être en train de tirer des conclusions sur les données contenant de mauvais caractères. Cela peut être quelque chose d'autre, et sans déboguer plus loin, il est difficile de spéculer.