Уведомления

Группа в Telegram: @pythonsu

#1 Янв. 28, 2011 11:30:34

Enchantner
От:
Зарегистрирован: 2009-02-11
Сообщения: 442
Репутация: +  0  -
Профиль   Отправить e-mail  

replace юникода через shell

Пытаюсь сделать replace() русских символов в юникодном русском тексте, хранящемся в базе. Захожу в manage.py shell, беру Model.objects.all() и делаю print obj.text.replace(u'Телефон', u'bugaga'). Не работает, то есть выводится текст без замен. Если вместо русского текста первым аргументов передаю строку цифр или английскую строку - все пашет. ЧЯДНТ?

И да, кодировка консоли ru_RU.UTF-8



Отредактировано (Янв. 28, 2011 11:31:22)

Офлайн

#2 Янв. 28, 2011 11:37:28

maxwell
От:
Зарегистрирован: 2008-08-26
Сообщения: 111
Репутация: +  0  -
Профиль   Отправить e-mail  

replace юникода через shell

Enchantner, я не линуксоид, но смею предположить что дело не в django, а в bash'е. Попробуйте шеллу передать файл (перенаправить поток).

Или лучше создать файл с командой и выполнить его.

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



Отредактировано (Янв. 28, 2011 11:42:21)

Офлайн

#3 Янв. 30, 2011 19:45:18

dissdoc
От:
Зарегистрирован: 2009-12-12
Сообщения: 273
Репутация: +  0  -
Профиль   Отправить e-mail  

replace юникода через shell

Кодировка базы какая?



Офлайн

Board footer

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

Powered by DjangoBB

Lo-Fi Version