![]() |
|
Модераторы: Aliance, skyboy, MoLeX, ksnk |
![]()
|
|
| linuxoid |
|
|||
|
Бывалый ![]() Профиль Группа: Участник Сообщений: 180 Регистрация: 17.4.2005 Репутация: нет Всего: нет |
Здравствуйте, коллеги. На каке (1.3) такая проблема возникла:
Я использую translate behavior для мултиязычного сайта. Есть бэкэнд, где я могу редактировать контент. Т.е. CMS Есть 2 кнопочки, которые устанавливают locale : rus и eng Возьмем простой пример: - есть таблица - категории (categories) - У каждой категории 2 поля: id и title - Соответственно title выносим в categories_translations - из categories поле title удаляем. Workflow такой. Нажимаем eng. locale в контроллере категорий меняется на eng. Теперь можно создать категорию для eng сайта. Сохраняем и видим, что в списке категорий (admin_index) появилась запись. К примеру id title 1 Test category Проблема в том, что при переключении locale на rus список категорий будет пуст, т.к. видимо работает join и пытается найти в таблице categories_translations соответсвующие записи, которых там еще нет (но на en_us всё OK, т.к. я только что создал категорию с переводом для en_us, поэтому при выборе eng мы что-то видим в списке). Хотелось бы, чтобы на rus список так же бы выводился, даже если еще нету перевода на rus в categories_translations. Надеюсь, что понятно объяснил, в чем дело. Есть ли какое-то решение без хаков? К примеру можно сначала взять просто все существующие id категорий, затем, если есть перевод для них, присоединить этот перевод и затем составить список. Но это "тяжелый" вариант. Может быть есть какое-то простое решение в рамках каки? Благодарю Это сообщение отредактировал(а) linuxoid - 29.9.2011, 12:53 |
|||
|
||||
| linuxoid |
|
||||
|
Бывалый ![]() Профиль Группа: Участник Сообщений: 180 Регистрация: 17.4.2005 Репутация: нет Всего: нет |
В общем пока остановился на этом солюшне. Не идеальное решение, но для моих задач очень даже подходит (если языки предопределены - rus, eng, spa, т.е. не добавляются динамически) http://www.palivoda.eu/2008/04/i18n-in-cak...slation-part-2/
Чтобы можно было сохранять в CMS для разных locale нужно в i18n.php заменить beforeSave() на это (комментарий #7 Georgi Mavrev Says: July 14th, 2008 at 6:25 pm )
Чтобы поменять язык (комментарий #28 Rostislav Palivoda Says: July 23rd, 2009 at 11:44 pm)
Это сообщение отредактировал(а) linuxoid - 30.9.2011, 09:34 |
||||
|
|||||
![]()
|
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | PHP: Libraries | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |