2010-06-18 2 views
0

Je vais avoir un problème pour obtenir le titre d'un objet de mon objet i18n dans Doctrine 1.1.6/symfony 1.2getTitle() sur la doctrine i18n avec le langage non par défaut

J'ai la méthode Tableau Doctrine suivante:

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(); 

}

ensuite sur le fichier de vue si je $ place-> getTitle(), il imprime le titre correctement dans la langue que je voulais. Cependant, si je fais $ place-> getTitle() sur une action, il ne retourne rien, je dois faire $ place-> Translation ['es'] -> title pour obtenir le titre en espagnol. Si je travaille avec la langue par défaut ('en') $ place-> getTitle() fonctionne.

Une idée sur comment rendre $ place-> getTitle() pour toujours fonctionner?

merci!

Répondre

0

Je ne sais pas pourquoi cela ne fonctionne pas; alors je fais maintenant $ place-> Translation [$ lang] -> title pour obtenir le titre sur la langue que je voulais.

Questions connexes