Найти - Пользователи
Полная версия: Django ORM и Unicode-строки
Начало » Django » Django ORM и Unicode-строки
1
cleg
Я явно что то делаю не так, но что именно - никак не пойму.
У меня есть простейшая модель.

class Page(models.Model):
title = models.TextField(blank = False, null = False)
Я сохраняю заголовски статей, в том числе и на русском. Все сохраняется без проблем.
Но при поптыке сделать запрос получается лажа.

page = Page.objects.filter(id = 1)
Строка в page.title почему-то возвращается в виде unicode-escaped.

u'\u042e\u0449\u0435\u043d\u043a\u043e'
Если ее print-ануть или вывести в шаблон - все нормально, но моя проблема состоит в том что мне надо сдампить ее в JSON.

dumps({'title': page.title})
И в JSON она как раз попадает в escaped-виде.
Я уже перепробовал все мыслимые и не мыслимые комбинации encode-decode и преобразований.
Подскажите пожалуйста, как получить из этого нормальный “человеческий” Unicode? :) Понятно что JS поймет этот формат, но хочется сократить объем перегоняемых по сети данных.

Спасибо.
Александр Кошелев
cleg
Подскажите пожалуйста, как получить из этого нормальный “человеческий” Unicode?
Это какой?
cleg
Понятно что JS поймет этот формат, но хочется сократить объем перегоняемых по сети данных.
Вы уверены что вам это нужно? Например в кодировке utf-8 вы не получите преимущества.
cleg
Daevaorn
Вы уверены что вам это нужно? Например в кодировке utf-8 вы не получите преимущества.
разве? по-моему в utf-8 на символ все же не 6 байт уходит.
Александр Кошелев
cleg
разве? по-моему в utf-8 на символ все же не 6 байт уходит.
Безусловно, но та же JSON разметка сама что-то весит и вообще, если контент через zlib прогонять (что обязательно надо делать) профит небольшой.
ziro
u'\u042e\u0449\u0435\u043d\u043a\u043e'
RTFM - это в спецификации JSON.
cleg
ок. тему можно закрывать. спасибо.
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Powered by DjangoBB