getTitle () в Doctrine i18n с языком не по умолчанию - PullRequest
0 голосов
/ 18 июня 2010

У меня проблема с получением названия объекта из моего объекта i18n в Doctrine 1.1.6 / Symfony 1.2

У меня есть следующий метод таблицы Doctrine:

public function getPlace($place_id, $lang=''){
$q = Doctrine::getTable('Place')
  ->createQuery('p');

if($lang != '')
  $q = $q->leftJoin('p.Translation ptr')
    ->addWhere('ptr.lang = ?', $lang);

return $q->addWhere('p.id = ?', $place_id)
    ->fetchOne();

}

Затем в файле просмотра, если я выполняю $ place-> getTitle (), он правильно печатает заголовок на том языке, который я хотел.Однако, если я выполняю $ place-> getTitle () для действия, которое ничего не возвращает, я должен сделать $ place-> Translation ['es'] -> title, чтобы получить заголовок на испанском языке.Если я работаю с языком по умолчанию ('en'), то $ place-> getTitle () работает.

Есть идеи, как заставить $ place-> getTitle () работать всегда?

спасибо!

1 Ответ

0 голосов
/ 19 июня 2010

Я не понимаю, почему это не работает;так что теперь я делаю $ place-> Translation [$ lang] -> title, чтобы получить название на нужном мне языке.

...