Pull to refresh
3
0
Станислав Публика @passtas

Principal e-Commerce Solution Architect

Send message
Если будем дублировать, столкнемся с ненормализированной базой… Но это не критично, мне кажется, при относительно небольшом объеме базы.

А 4-й вариант необязательно должен зависеть от языка оригинала. Просто за основу нужно брать ранее добавленный экземпляр страницы.
Спасибо за скрин!
56 нужных столбцов… :)
Вот и еще одинн вариант нарисовался. Он имеет право на жизнь. Но как вы сказали этот способ для небольших текстов.

По сути, я так понял, что вы в одно поле таблицы записываете все переводы по данному тексту, и компонуете их с помощью xml. Если бы я так делал, то делал используя сериализацию массива.
А с контролем версий лучше использовать 5 вариант. Он масштабируемый.
Вы сейчас описали идею номер 4. Но спасибо, за более детализированное объяснение.
Ваш пример касается перевода интерфейса, а не перевода контента.
Я так понимаю что таблица сущностей такая же как в 3-м варианте?
Спасибо, так уже интересней.
Спасибо, это мой четвертый вариант.
*не ошибаетесь*, но в данном случае я не использую симфони.
Ничего не мешает. Задача состоит в написании такого CRUD. Просто хочется сделать его единым для проекта.

*PM mode on*
Бесспорно Вы правы.
Но все же я хочу сначала разобраться что делать, а потом как делать.
*PM mode off*
Согласен, но скорее пункт 3, так как нужно чтоб при переходе на другой язык, у нас показывалась та же страница.
Спасибо, а можно по-подробней об узких местах?
Уровень абстракции на котором проводится обсуждение, предусматривает, что предварительно такой механизм уже реализован.
Спасибо. Вот пользователь, немного позже описал ваш метод habrahabr.ru/blogs/webdev/99480/#comment_3073862
Согласен, просто индивидуальность поставленных передо мной задач не позволяет мне сделать такой шаг. Тут есть четкая необходимость реализовать это в контексте своего фреймворка и реализовать «сразу», приняв правильное решение.
Я имел опыт работы с Symfony и CodeIgniter. Там тоже решены эти задачи. Но все-же хочется решить их правильно индивидуально, предварительно обсудив с вами.

Я работал с многими программистами, но ни один так четко и не сказал как правильно решить задачу с переводом контента. У всех свое мнение, которое они пытаются навязать. Это не плохо, наверное… Но в итоге, перестаешь понимать, что такое хорошо, а что такое плохо.
Ну нормализация тут не доходит до четвертой нормальной формы.
Если это критично, то этот вариант можно модифицировать с одним join. Что тоже принципиально равносильно, и тогда нормализируется вся структура.
Все-ровно сначала нужно определиться на абстрактном уровне как делать.
Спасибо, посмотрел. Но больше похоже на инструмент перевода интерфейса, а не перевода контента…
О модели в документации умалчивают. Больше рассказывается об автоматической генерации ссылок на локализированные страницы и вообще как это прикольно и круто.
В итоге все работает без джоинов, а простой выборкой. Спасибо за живой пример.
Вот как раз с кешированием, я думаю над пятым вариантом, т.е. дублируется структура основной таблицы и еще одно поле, идентификатор языка, как во втором варианте. Т.е. получаем комбинированную структуру и широкие возможности администрирования.

Information

Rating
Does not participate
Location
London, England - London, Великобритания
Date of birth
Registered
Activity