CakePHP: я не могу понять это в поведении перевода - PullRequest
0 голосов
/ 18 сентября 2010

в торт-книжке на странице http://book.cakephp.org/view/1331/Defining-the-Fields есть предложение, которое я не могу интерпретировать:

При определении полей для TranslateBehavior для перевода обязательно пропустите эти поля в схеме переведенной модели. Если вы оставите поля в, могут возникнуть проблемы при получении данных с резервными локалями.

Может ли кто-нибудь объяснить мне более простой способ, чем изначально? Я думаю, что у меня проблема с языком, так как английский не мой родной: P

Ответы [ 2 ]

0 голосов
/ 19 сентября 2010

Это означает, что в следующем случае:

class Article extends AppModel
{
    var $actsAs = array('Translate' => array('title'));
}

У вас не должно быть поля Article.title (т. Е. articles.title) в вашей базе данных, иначе у вас возникнут проблемы в какой-то момент.

По сути, когда вы разрабатываете свою таблицу, которую планируете переводить, пропустите те поля, которые вы хотите перевести.

Надеюсь, это поможет!

0 голосов
/ 19 сентября 2010

Я никогда не использовал это поведение, и я должен сказать, что я искал бы объяснение того, как его использовать, поскольку у меня тоже (и я англичанин) возникают проблемы с его пониманием.

Я предполагаю, что вам нужно убедиться, что в таблице i18n нет полей с тем же именем, что и у поля, которое вы переводите, т.е. если вы переводите Post.name, вы должны быть осторожны, чтобы не получить i18nTable.name

Я не пользуюсь консолью, и нет объяснения необходимого имени или структуры таблицы i18n, поэтому мой комментарий - это предположение, но я надеюсь, что он в некоторой степени полезен.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...