Bonjour à tous,

Voilà, j'ai un petit soucis incompréhensible depuis quelques jours, dans mes relations Doctrine.

Déjà, voici mon YML (simplifié, car un peu trop volumineux):
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
Oeuvre:
  actAs:
    I18n:
      tableName: oeuvre_title
      fields:  [title, infos]
  columns:
    year:      {type: smallint }
    lang:      {type: string(64) }
    comment:   {type: string(255) }
    title:     {type: string(255) }
    infos:     {type: string(255) }
  relations:
    language:  { class: Country,     local: lang, foreign: code }
 
Book:
  columns:
    id:        {type: integer, primary: true }
    lang:      {type: string(2), primary: true }
    editor_id: {type: integer, notnull: true }
    title:     {type: string(255) }
    oeuvre_id: {type: integer, notnull: true }
  relations:
    language:  { class: Country, local: lang, foreign: code }
    oeuvre:    { class: Oeuvre, local: oeuvre_id, foreign: id }
 
BookOeuvre:
  columns:
    id:        {type: integer, primary: true, notnull: true }
    lang:      {type: string(2), primary: true, notnull: true }
    oeuvre_id: {type: integer, primary: true, notnull: true }
    book_id: {type: integer, primary: true, notnull: true }
  relations:
    language:  { class: Country, local: lang,  foreign: code }
    book:      { class: Book,    local: id,    foreign: id, foreignAlias: OeuvresList }
    oeuvre:    { class: Oeuvre,  local: oeuvre_id, foreign: id, foreignAlias: BooksList   }
Dans le cas présent, les fonctions Book::getOeuvresList() et Oeuvre::getBooksList() devraient me renvoyer des listes de résultats du type Doctrine_Collection.

Mais en faisant un var_dump sur les résultats, j'obtients ceci:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
var_dump(Book::getOeuvresList()) = object(BookOeuvre) {...} 
var_dump(Oeuvre::getBooksList()) = object(Doctrine_Collection) { object(BookOeuvre) ...}
Donc ma question est... Pourquoi dans le premier cas je n'obtient pas une liste d'objet, alors que la syntaxe et la même.
J'ai vérifier dans le fichier modèle de Book pour être certain et j'ai bien un liaison du type Many:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
        $this->hasMany('BookOeuvre as OeuvresList', array(
             'local' => 'id',
             'foreign' => 'id'));
Je ne sais vraiment pas où chercher...

Merci beaucoup.
Snark.