Алексей Лихацкий (likhatskiy) wrote,
Алексей Лихацкий
likhatskiy

Category:

Encode шаблонов в Mojo или я на глагне

Столкнулся с большой проблемой в Mojo.
У меня есть проект на cp1251, и перейти на utf-8 я не могу по техническим причинам. Этот проект является сервером для j2me клиента, и для кросс-платформенности на всех телефонах я сделал на нем универсальный decode, но привязка была к cp1251. Поэтому кодировку менять я не могу. Решил начинать переписывать все на Mojo. Столкнулся с тем, что Mojo делает encode всех шаблонов в utf-8. Естественно у меня все поплыло на фанере до парижа. И я решил сделать возможность смены кодировки, просто в startup пишем:
         $self->renderer->encoding('cp1251');
И он все шаблоны будет переводить в cp1251. По умолчанию будет UTF-8.
Автор эту возможность одобрил, да не полностью. Изначально я сделал возможность не только сменить кодировку, но и вовсе выключить encode шаблонов ($self->renderer->encoding('');). Но это автор уже не одобрил, долго с ним спорил. Ну не пойму я, зачем делать encode шаблонов, если я уверен, что у меня с данными все в порядке. Говорит, что это может быть не предсказуемо. Ну дело его, проект его, он о нем больше знает, и решать ему - все равно человек рульный.
Начал тестить нововведение с правками автора. И тут не задача. Надо делать decode всех переменных. Я решил вопрос так:
% use encoding 'cp1251';
во всех шаблонах. Да, не удобно, но что делать...
Tags: cp1251, encode, mojo, mojolicious, perl, renderer, template, utf-8
Subscribe

  • Mojolicious application with Virtual Host support

    Часто требуется создание нескольких сайтов относящихся к одному проекту, например основной сайт, админка и допустим блог. Если второстепенные…

  • OAUTH в Mojo и Mojolicious

    После написания модуля для всех версий протокола OAUTH преступил к использованию этого добра в проектах на Mojolicious. В итоге получился очень…

  • OAUTH 1.0, 1.0A и 2.0 в одном течении

    В силу стремительного распространения OAUTH, решил внедрить его в своих проектах. Начал разбираться, выяснилось что есть аж три версии протокола:…

  • Post a new comment

    Error

    Anonymous comments are disabled in this journal

    default userpic

    Your reply will be screened

    Your IP address will be recorded 

  • 1 comment