Daccord donc y'a pas de problème, c'est juste qu'il n'y a pas de
liaison dans ta table sur certain enregistrement...

Avant de faire :
  $news->getNewsPlace()->getTitle()

Tu doit vérifier que tu récupère bien un eregistrement :

$topic = $news->getNewsPlace();
if (!empty($topic))
  echo $topic->getTitle();
else
  // Traitement si pas de liaison

Voila... :D


On 26 mai, 11:41, Alex <[EMAIL PROTECTED]> wrote:
> La fonction existe bien mais ne renvoie rien, c'est bien ça.
>
> On 25 mai, 20:38, MackerT <[EMAIL PROTECTED]> wrote:
>
> > sur : $news->getNewsPlace() c'est la fonction qui n'existe pas ou
> > c'est le résultat qui est vide ?
>
> > On 25 mai, 19:52, Alex <[EMAIL PROTECTED]> wrote:
>
> > > Bonjour tous le monde,
>
> > > Je découvre avec grand plaisir symfony au travers de la construction
> > > d'un backend pour news multilingue.
>
> > > Dans la liste des news j'ai 3 colonnes avec des clés étrangères
> > > user_id, news_topic_id et news_place_id.
> > > J'ai donc utilisé la méthode des partial fields (http://www.symfony-
> > > project.com/book/trunk/14-Generators) pour afficher le contenu
> > > correspondant :
>
> > > - j'accède correctement à l'objet issue de news_topic_id :
> > > _news_topic_link (generator.yml) et le template correspondant
> > > (_news_topic_link .php) avec la vue  echo $news->getNewsTopic()-
> > >  >getImage();  OK pour celui-ci...
>
> > > - même cas de figure a priori pour accéder à l'objet relatif  à
> > > news_place_id :
> > > _news_place_link (generator.yml) + template (_news_place_link .php),
> > > sauf qu'ici mon objet $news->getNewsPlace() est vide, donc $news-
> > >  >getNewsPlace()->getTitle() n'existe pas...
> > > J'ai vérifié mon schema (innoDB), reconstruit mes modèles, mes
> > > modules, vidé mon cache, mais rien n'y fait, la liaison ne se fait pas.
>
> > > - La FK user_id devrait me permettre d'accéder aux infos sur l'auteur
> > > de la news, j'utilise sfGuard pour la gestion des utilisateurs,
> > > j'ai donc paramétré le schema comme indiqué sur  http://trac.symfony-
> > > project.com/trac/wiki/sfGuardPlugin ...
> > > Mais pour le moment $news->getUser() dans la vue correspondante
> > > n'existe pas (pas eu le temps d'approfondir encore)
>
> > > Quelqu'un a-t-il eu ce genre de souci ?
> > > Merci beaucoup pour votre aide...
>
> > > ------------------------------------------------------------------------
> > > -------
>
> > > Extrait du generator.yml
>
> > > generator:
> > >    class:              sfPropelAdminGenerator
> > >    param:
> > >      model_class:      News
> > >      theme:            default
> > >      list:
> > >        title:          News list
> > >        layout:         tabular
> > >        display:        [id, _news_topic_link, _user_link,
> > > =title_i18n_en, _news_place_link]
>
> > > ------------------------------------------------------------------------
> > > -------
>
> > > Voici l'extrait de mon schema :
>
> > >    news:
> > >      _attributes:      { phpName: News }
> > >      id:
> > >      user_id:          { type: integer, index: index }
> > >      news_topic_id:
> > >      news_place_id:
>
> > >    news_i18n:
> > >      _attributes:      { phpName: NewsI18n }
> > >      title:            varchar(255)
> > >      text:             longvarchar
>
> > >    news_place:
> > >      _attributes:      { phpName: NewsPlace }
> > >      id:
> > >      culture:          { isCulture: true, type: varchar, size: 7,
> > > required: true, primaryKey: true }
> > >      title:             varchar(255)
>
> > >    news_topic:
> > >      _attributes:      { phpName: NewsTopic }
> > >      id:
> > >      image:             varchar(100)
>
> > >    news_topic_i18n:
> > >      _attributes:      { phpName: NewsTopicI18n }
> > >      title:            varchar(255)
>
> > > ------------------------------------------------------------------------
> > > -------
>
> > > Alex Druhet
> > > [EMAIL PROTECTED]


--~--~---------~--~----~------------~-------~--~----~
Vous avez reçu ce message, car vous êtes abonné au groupe Groupe "Symfony-fr" 
de Google Groupes.
 Pour transmettre des messages à ce groupe, envoyez un e-mail à 
l'adresse [email protected]
 Pour résilier votre abonnement à ce groupe, envoyez un e-mail à 
l'adresse [EMAIL PROTECTED]
 Pour afficher d'autres options, visitez ce groupe à l'adresse 
http://groups.google.com/group/symfony-fr?hl=fr
-~----------~----~----~----~------~----~------~--~---

Répondre à