Добавить наверно больше нечего. В целом довольно удобный и эффективный способ. Особенно удобно, что не нужно на уровне шаблонов или каких-то других операций думать, где что брать, достаточно сделать $model->getName() и получить переменную в нужной локале, если это поле вообще переводится.
Если происходят какие-то массовые запросы, то модели у нас уже приходят с джоинами c Translation таблицами.
Иметь Translation таблицу для данных, кажется единственный подходящий вариант при действительно многоязычном сайте. Способ сделать работу с ней удобно и просто это уже вопросы ORM или ваши.
А потом как-то странно получилось, что при сохранении объекта приходится руками сохранять все связанные объекты, которые в принципе как-то «понятно» существую в форме. // Нужно указать родительский объект
foreach ($entity->getNewsLinks() as $link)
{
$link->setNews($entity);
}
$em->persist($entity);
Не очень красиво ложиться на российскую действительность, высшее образование в общем имеют все "специалисты" и бросить институт ради стратапов никто не будет (скорее всего будут сочитать одно и другое, благо это не тяжело). Также можно сказать, что выхлоп от обучения у нас по близким к CS наукам будет в лучшем случае глубоко теоретическим (дискеты для машины тюринга), и в общем случае далеким от практического применения в IT.
С другой стороны - талантливые люди они везде талантливы, поэтому нет ничего необычного что добившиеся успеха "стартаперы" преуспевали и в других вопросах, в том числе и науке.
Добавить наверно больше нечего. В целом довольно удобный и эффективный способ. Особенно удобно, что не нужно на уровне шаблонов или каких-то других операций думать, где что брать, достаточно сделать $model->getName() и получить переменную в нужной локале, если это поле вообще переводится.
Если происходят какие-то массовые запросы, то модели у нас уже приходят с джоинами c Translation таблицами.
Иметь Translation таблицу для данных, кажется единственный подходящий вариант при действительно многоязычном сайте. Способ сделать работу с ней удобно и просто это уже вопросы ORM или ваши.
А потом как-то странно получилось, что при сохранении объекта приходится руками сохранять все связанные объекты, которые в принципе как-то «понятно» существую в форме.
// Нужно указать родительский объект
foreach ($entity->getNewsLinks() as $link)
{
$link->setNews($entity);
}
$em->persist($entity);
С другой стороны - талантливые люди они везде талантливы, поэтому нет ничего необычного что добившиеся успеха "стартаперы" преуспевали и в других вопросах, в том числе и науке.
my habra-carma is such an asshole. give me more carma