Мы заняты проектом CakePHP, который должен поддерживать несколько языков. Но есть одна проблема ... Есть страницы, которые NOT поддерживается для других языков. Таким образом, есть испанские страницы, которые нужно скрывать для итальянской версии веб-сайта. Какое лучшее решение для этого в CakePHP?CakePHP multi languages = несколько баз данных?
Мы можем переключать базы данных сразу же, как только вы переключаете языки, но проблема в том, что мы будем пропускать важные данные в качестве пользователей, и если мы это сделаем. И это может быть перегрузка для поиска в базе данных с испанскими, итальянскими, немецкими, английскими, нидерландскими и шведскими сообщениями, только для испанских сообщений. Или, может быть, это не проблема, если мы индексируем языковой столбец ... но я не знаю.
Так кто-нибудь знает лучшее решение?
Я бы поместил все в одну базу данных, если можно; наличие отдельных баз данных для разных стран просто даст вам больше работы. Итак, да - добавьте языковой столбец в таблицы, которые можно перевести. – halfer
Вы также можете использовать поведение перевода. Это особенно хорошо, если у вас много языков. http://book.cakephp.org/2.0/en/core-libraries/behaviors/translate.html Вы могли бы сделать что-то, что лишает доступ, если перевод не существует для просматриваемого языка. – Kai
Определенно избегайте наличия нескольких баз данных ... Копирование и синхронизация пользователей только потому, что они меняют свой язык, создает для вас кошмар. Вместо этого укажите, что вы можете. – swiecki