Теги на разных языках

Общие вопросы по использованию второй версии фреймворка. Если не знаете как что-то сделать и это про Yii 2, вам сюда.
Ответить
codrilla
Сообщения: 173
Зарегистрирован: 2013.03.06, 12:24
Откуда: Молдова, Тирасполь

Теги на разных языках

Сообщение codrilla »

Есть многоязычный сайт. В нем модель News (для примера) содержит контент на трёх языках, который хранится в отдельной таблице NewsContent (модель одноимённая). А данные с переводами извлекаются через связь между этими моделями. И вот вопрос. Как для данной архитектуры сделать теги для новостей. Пока есть два варианта:
- теги создаются заранее, что-то вроде рубрик, только без иерархии
- теги разные для каждого языка и тогда уже создаются стандартно.
Если кто-то сталкивался с подобной задачей или есть какие-то мысли по поводу решения, поделитесь мнением, что лучше выбрать? Может что-то третье? Спасибо заранее.
mickgeek
Сообщения: 957
Зарегистрирован: 2014.05.31, 20:50
Откуда: Санкт-Петербург
Контактная информация:

Re: Теги на разных языках

Сообщение mickgeek »

По сути, так же, как и с NewsContent: id | name | language. Или: id | name_ru | name_en | name_de.

Чем меньше пользователь совершает действий, тем лучше. Не думаю, что создание тегов заранее - хорошее решение.
codrilla
Сообщения: 173
Зарегистрирован: 2013.03.06, 12:24
Откуда: Молдова, Тирасполь

Re: Теги на разных языках

Сообщение codrilla »

Ну вот а как их вводить? В этом загвоздка. Сейчас перевод вводится просто на разных вкладках, а как сделать соответствие тегам - непонятно. Чтобы я знал, какой тег является переводом другого.
mickgeek
Сообщения: 957
Зарегистрирован: 2014.05.31, 20:50
Откуда: Санкт-Петербург
Контактная информация:

Re: Теги на разных языках

Сообщение mickgeek »

А как у Вас реализовано подобное в новостях?
codrilla
Сообщения: 173
Зарегистрирован: 2013.03.06, 12:24
Откуда: Молдова, Тирасполь

Re: Теги на разных языках

Сообщение codrilla »

https://yadi.sk/i/Jy1arMMRa6hey вот таким образом
mickgeek
Сообщения: 957
Зарегистрирован: 2014.05.31, 20:50
Откуда: Санкт-Петербург
Контактная информация:

Re: Теги на разных языках

Сообщение mickgeek »

Определённо, очень информативно. Здесь я уже ничем не смогу помочь.
codrilla
Сообщения: 173
Зарегистрирован: 2013.03.06, 12:24
Откуда: Молдова, Тирасполь

Re: Теги на разных языках

Сообщение codrilla »

Хм, может я вопрос неправильно понял? Модели с содержанием передаются в виде ассоциативного массива. View ашду формируется следующим образом:

Код: Выделить всё

<?= $form->field($model, "[$model->lang]title")->textInput() ?>
<?= $form->field($model, "[$model->lang]content")->widget(ImperaviRedactor::className(), [
        'settings' => [
            'lang' => 'ru',
            'minHeight' => 200,
            'pastePlainText' => true,
            'plugins' => [
                'clips',
                'fullscreen'
            ],
        ],
    ]) ?>
Так как заголовков и содержаний на каждый язык строго по одному, соответствия выстроить не сложно. Но тегов будет неопределённое и количество и выводиться они, вероятно, будут в одно строковое поле. В этом и загвоздка, что в таком случае сопоставить переводы будет невозможно.
Ответить