App Engine выдает ошибку в формате числа при развертывании - PullRequest
0 голосов
/ 10 февраля 2011

Я только что развернул свое приложение, и как только я захожу на домашнюю страницу, я получаю страницу «500 внутренняя ошибка сервера». Просмотрев логи, я получил следующую ошибку:

type 'exceptions.SyntaxError'>: не-ASCII символ '\ xc2' в файле /base/data/home/apps/spare-wheels/1.348259065130939449/sparewheels.py в строке 465, но кодировка не объявлена; подробности см. http://www.python.org/peps/pep-0263.html (sparewheels.py, строка 465)

Рассматриваемая строка выглядит следующим образом:

self.template_values['price_pounds'] = "£%.2f" % (float(self.event.price_pence)/100)

Это работало нормально при работе на localhost: есть ли что-то в форматировании чисел, которое не поддерживается версией Python для Google Apps?

Ответы [ 2 ]

5 голосов
/ 10 февраля 2011

Проверьте кодировку файла python, это UTF-8?В этом сообщении об ошибке указывается, что вы, возможно, сохранили файл в формате ASCII с международными символами в файле (он же «£»), из-за чего среда выполнения Python от Google устранила ошибку 500.

Также попробуйте добавить эту строкуПервая или вторая строка файла Python:

# coding=utf-8
1 голос
/ 10 февраля 2011

Если вы не хотите портить кодировки файлов, как подсказывает @Shakakai, и это единственный не-ASCII-символ, с которым вы имеете дело в своем источнике, вы также можете просто заменить этот символ на эквивалентную сущность HTML £, который будет отображаться правильно.

...