- 1. Түзету
Сайтта бір қате болды, ол хабарларға аты кириллицада жазылған файлдарды тіркеу кезінде пайда болды. Бұл жағдайда сайт 503 қатесін берді.Бұл дерекқор кодтауы UTF8 форматында болғанына қарамастан, алдыңғы мақалада дерекқордың кодтауын түзеткеннен кейін орын алды. /). Джанго келесі хабарламаны берді:
'latin-1' codec can't encode characters in position 55-64: ordinal not in range(256)
Мәселе сервер кодтауының бастапқыда LATIN1 мәніне орнатылғанында болды. Яғни, келесі пәрмендер келесі нәтижені берді:
postgres=# show server_encoding; server_encoding ----------------- LATIN1 (1 row) postgres=# show client_encoding; client_encoding ----------------- LATIN1 (1 row) postgres=# \encoding LATIN1
SET CLIENT_ENCODING TO 'utf8'; пәрменін орындау еш нәтиже бермеді, psql-дан шыққаннан кейін кодтау LATIN1 түріне оралды.
Түзету
Бұл қатені түзету сервердің кодтауын орнатуға келді. Сервер негізінен орыс тілінде сөйлейтін болғандықтан, оны түзету үшін орыс тіліндегі тіл бумалары орнатылды.
sudo apt-get install language-pack-ru
Орыстандыру процесінің орындалуы
sudo update-locale LANG=ru_RU.UTF-8
Және серверді қайта іске қосыңыз
sudo reboot
Осыдан кейін сервер клиентінің кодтауы UTF8 болды
postgres=# show server_encoding; server_encoding ----------------- LATIN1 (1 row) postgres=# show client_encoding; client_encoding ----------------- UTF8 (1 row) postgres=# \encoding UTF8
Бұл қатені түзету үшін жеткілікті болды.