Уведомления

Группа в Telegram: @pythonsu

#1 Ноя. 15, 2014 13:45:11

Mixeyka
Зарегистрирован: 2014-09-19
Сообщения: 32
Репутация: +  1  -
Профиль   Отправить e-mail  

Ошибка с уникодом

Ошибка такая:

Django Version: 1.7.1
Exception Type: UnicodeEncodeError
Exception Value:
'ascii' codec can't encode characters in position 26-32: ordinal not in range(128)
Exception Location: /mik/www/lib/python3.4/site-packages/django/template/loaders/filesystem.py in load_template_source, line 38
Python Executable: /mik/www/bin/python3
Python Version: 3.4.0

Проблема в том, что я назвал файл шаблона русским языком.
Во первых хотелось бы узнать, что именно он не смог раскодировать - само имя файла не смог считать, или он считал имя файла, но вставил его во вьюху в недопустимой кодировке?

Возможно ли что-то придумать, чтобы шаблоны называть по русски?

Знаю - вопрос сложный. Надеюсь, что кто-то ответит.

Офлайн

#2 Ноя. 15, 2014 16:14:11

alexsis
Зарегистрирован: 2013-07-26
Сообщения: 148
Репутация: +  9  -
Профиль   Отправить e-mail  

Ошибка с уникодом

А зачем в названии шаблона использовать кириллицу?

Офлайн

#3 Ноя. 15, 2014 16:47:58

Mixeyka
Зарегистрирован: 2014-09-19
Сообщения: 32
Репутация: +  1  -
Профиль   Отправить e-mail  

Ошибка с уникодом

Кому то удобнее на русском, когда шаблонов много.

Офлайн

#4 Ноя. 17, 2014 18:26:32

den4ik
Зарегистрирован: 2014-07-20
Сообщения: 59
Репутация: +  4  -
Профиль   Отправить e-mail  

Ошибка с уникодом

template_name = u'dashboard/индекс.html'

Но бред же.

Отредактировано den4ik (Ноя. 17, 2014 18:28:08)

Офлайн

#5 Ноя. 18, 2014 06:07:28

JOHN_16
От: Россия, Петропавловск-Камчатск
Зарегистрирован: 2010-03-22
Сообщения: 3292
Репутация: +  221  -
Профиль   Отправить e-mail  

Ошибка с уникодом

Mixeyka
а обычный traceback ошибки где? Он то и подскажет. НУ а на вскидку - содержимое самих шаблонов соответствует кодировке ОС? Потому что если текст шаблона был написан в винде с ее cp1251, то на линуксе с его utf-8 по умолчанию он просто не сможет его раскодировать.



_________________________________________________________________________________
полезный блог о python john16blog.blogspot.com

Офлайн

#6 Ноя. 19, 2014 20:29:24

Mixeyka
Зарегистрирован: 2014-09-19
Сообщения: 32
Репутация: +  1  -
Профиль   Отправить e-mail  

Ошибка с уникодом

JOHN_16
Да не, я в nano делал.
На данный момент, так и не смог решить проблему. Если тебе что-то конкретное надо, чтобы помочь, то я могу воспроизвести ошибку.

Офлайн

#7 Ноя. 19, 2014 22:37:41

JOHN_16
От: Россия, Петропавловск-Камчатск
Зарегистрирован: 2010-03-22
Сообщения: 3292
Репутация: +  221  -
Профиль   Отправить e-mail  

Ошибка с уникодом

Mixeyka
Python хорош тем, что при возникновение исключительной ситуации чаще всего выдает достаточно полный traceback по которому можно отследить место возникновения ошибки.
Например если я попробую поделить на ноль в в каком то модуле, то сообщение об ошибке проинформирует меня о то что возникла в таком то модуле в строчке 10. И уже там я ищу проблему.

Traceback (most recent call last):
  File "C:\[b]ruru.py[/b]", [b]line 10[/b], in <module>
    print j/(i-1)
ZeroDivisionError: integer division or modulo by zero
В вашем случае желательно видеть вот такой полный(!) код ошибки, потому что на вид выглядит все нормально.

P.S. если вы путаетесь в своих шаблонах. то лучше просто по другому организовывать структуру именования. Например именовать в соответствии с приложениями или структурными блоками вашего проекта, например one.html one_two.html one_three.html one_two_three.html и тп.



_________________________________________________________________________________
полезный блог о python john16blog.blogspot.com

Офлайн

#8 Ноя. 20, 2014 22:15:30

Mixeyka
Зарегистрирован: 2014-09-19
Сообщения: 32
Репутация: +  1  -
Профиль   Отправить e-mail  

Ошибка с уникодом

Извиняюсь, что так редко отвечаю - очень много дел свалилось. Постараюсь завтра полный отчёт об ошибке выложить.

JOHN_16
То что я пытаюсь сделать, это, наверное, эксперимент. Стараюсь сделать на русском всё что возможно, и смотрю как это выглядит и читается. Сам код питона, на русском выглядит замечательно, особенно модульное программирование, понравилось.

Шаблоны хочется увидеть примерно в виде такого списка:

страница_авторизации.мобильник
главное_меню.мобильник
настройки_пользователя.мобильник
список_сотовых_операторов.мобильник
список_друзей_в_онлайне.мобильник

Этакие, самодокументируемые названия шаблонов получаются. И, на мой взгляд, так ассоциации намного легче возникают, чем по английски.

Офлайн

Board footer

Модераторировать

Powered by DjangoBB

Lo-Fi Version