Список форумов Cake-PHP.ru Cake-PHP.ru
Форум программистов CakePHP
(на сайт)
 
 Watched TopicsWatched Topics   FAQFAQ   ПоискПоиск   ПользователиПользователи   ГруппыГруппы   РегистрацияРегистрация 
 ПрофильПрофиль   Войти и проверить личные сообщенияВойти и проверить личные сообщения   ВходВход 

Многоязычные сайты

 
Начать новую тему   Эта тема закрыта, вы не можете писать ответы и редактировать сообщения.    Список форумов Cake-PHP.ru -> Общий
Предыдущая тема :: Следующая тема  
Автор Сообщение
Vlad



Зарегистрирован: 02 Ноя 2007 11:45:52
Сообщения: 241

СообщениеДобавлено: 03 Ноя 2007 18:37:04    Заголовок сообщения: Многоязычные сайты Ответить с цитатой

Друзья, так а что, никто не делал мультиязычные сайты?

Меня по-прежнему интересует вопрос: как лучше переключать таблицы в базе данных?

Я пользовался вариантом ru_posts, ua_posts, en_post и переключал их в бифорфильтре, в контроллере.

А как лучше?
Вернуться к началу
Посмотреть профиль Отправить личное сообщение
VolCh



Зарегистрирован: 21 Окт 2007 07:17:33
Сообщения: 47
Откуда: Санкт-Петербург

СообщениеДобавлено: 04 Ноя 2007 15:21:07    Заголовок сообщения: Ответить с цитатой

у меня сделано так:

таблица languages
id
lang (en, de, fr и т.п.)
language (English, German, French)
language_loc (English, Deutsch, Français)

таблица contents:
id

таблица loc_contents
id
content_id
language_id
content

Все модели связаны, работаю с content как основной, язык через conditions задаю в контроллере.

У меня содержание сайта всегда синхронно на всех языках. Для юзерских постов сделаю posts такой структуры:
id
topic_id
language_id
post
Вернуться к началу
Посмотреть профиль Отправить личное сообщение Посетить сайт автора
SkieDr



Зарегистрирован: 13 Ноя 2007 12:13:38
Сообщения: 16

СообщениеДобавлено: 13 Ноя 2007 12:36:37    Заголовок сообщения: Ответить с цитатой

Копать в сторону routes и Translate behavior
Вернуться к началу
Посмотреть профиль Отправить личное сообщение MSN Messenger
bunyan



Зарегистрирован: 15 Ноя 2007 14:57:37
Сообщения: 17

СообщениеДобавлено: 15 Ноя 2007 15:24:28    Заголовок сообщения: Ответить с цитатой

VolCh писал(а):
у меня сделано так:

таблица languages
id
lang (en, de, fr и т.п.)
language (English, German, French)
language_loc (English, Deutsch, Français)

таблица contents:
id

таблица loc_contents
id
content_id
language_id
content

Все модели связаны, работаю с content как основной, язык через conditions задаю в контроллере.

У меня содержание сайта всегда синхронно на всех языках. Для юзерских постов сделаю posts такой структуры:
id
topic_id
language_id
post


А post в таблице posts - это текст поста на определенном языке?

По сабжу - я делал примерно так:

таблица news
--
id, created, news_category_id, ... - все поля, не требующие перевода

таблица news_texts
--
id, news_id, language_id, title, content - то есть ссылка на новость и ее язык, а также текстовые поля на определенном языке
Вернуться к началу
Посмотреть профиль Отправить личное сообщение Посетить сайт автора
VolCh



Зарегистрирован: 21 Окт 2007 07:17:33
Сообщения: 47
Откуда: Санкт-Петербург

СообщениеДобавлено: 15 Ноя 2007 15:56:45    Заголовок сообщения: Ответить с цитатой

Ну да, поскольку от юзера (или даже гостя) нельзя требовать чтобы он заполнял поля на нескольких языках, и это наоборот исключено ТЗ, то при добавления поста заносится language_id "локали". Если нужно будет вывести все посты в одном потоке, просто не буду обращать внимания, если, например, только на немецком (при немецкой локали) то отфильтрую.

а пример news практически копирует мой пример contents, просто у меня там нет полей не требующих перевода пока, хотя может и появятся Smile
Вернуться к началу
Посмотреть профиль Отправить личное сообщение Посетить сайт автора
Показать сообщения:   
Начать новую тему   Эта тема закрыта, вы не можете писать ответы и редактировать сообщения.    Список форумов Cake-PHP.ru -> Общий Часовой пояс: GMT + 3
Страница 1 из 1

 
Перейти:  
Вы можете начинать темы
Вы можете отвечать на сообщения
Вы можете редактировать свои сообщения
Вы можете удалять свои сообщения
Вы не можете голосовать в опросах


Powered by phpBB © 2001, 2005 phpBB Group
Русская поддержка phpBB

Рейтинг@Mail.ru