Sorry j'avais pas vu ta réponse la semaine dernière.

C'est curieux en effet. Je suis parvenu à reproduire ton problème avec
doctrine 1.0.x et 1.1.x , et le problème vient dans l'hydratation du
résultat de la requête par doctrine. Lorsqu'il existe plusieurs lignes de
résultats dont les champs correspondant à la table from() sont tous
identiques, seul le premier résultat est hydraté.

A mon avis, c'est un bug (grave) que tu devrais reporter sur le site off de
doctrine (www.doctrine-project.org) (à moins qu'il ne soit déjà reporté).

En attendant, si tu choisis de ne pas hydrater les données (
->execute(array(), Doctrine::HYDRATE_NONE)) tous les résultats sont bien
retournés (mais évidemment t'as pas d'objet mais un simple tableau
multi-dimensionnel).



2009/9/29 SomeOne <[email protected]>

> J'ai résolue le problème en passant par une sous requêtes.
> Ce qui n'explique toujours pas ce qui ce passe mal dans mon
> cheminement.
> Si quelqu'un a une piste je suis toujours interessé
>
> On 24 sep, 10:39, SomeOne <[email protected]> wrote:
> > On va commencer pas le schema.yml :
> > Domain:
> >   columns:
> >     id:
> >       type: integer
> >       primary: true
> >       notnull: true
> >       autoincrement: true
> >     name:
> >       type: string(255)
> >     redirect_to:
> >       type: integer
> >       default: NULL
> >     create_at:
> >       type: date
> >     expire_at:
> >       type: date
> > SubDomain:
> >   columns:
> >     id:
> >       type: integer
> >       primary: true
> >       notnull: true
> >       autoincrement: true
> >     domain_id:
> >       type: integer
> >     name:
> >       type: string(255)
> >   relations:
> >     DomainFrom:
> >       foreignType: many
> >       alias: DomainFrom
> >       local: id
> >       foreign: domain_from
> >       class: Redirect
> >     DomainTo:
> >       foreignType: many
> >       alias: DomainTo
> >       local: id
> >       foreign: domain_to
> >       class: Redirect
> > Redirect:
> >   columns:
> >     id:
> >       type: integer
> >       primary: true
> >       notnull: true
> >       autoincrement: true
> >     domain_from:
> >       type: string(255)
> >     domain_to:
> >       type: string(255)
> >     query_from:
> >       type: string(255)
> >     query_to:
> >       type: string(255)
> >     http_type:
> >       type: integer
> >     rank:
> >       type: integer
> >
> > ensuite j'avais fait un :<?php print_r($array); ?> dans ma vue qui me
> > donnes :
> >
> > sfOutputEscaperArrayDecorator Object
> > (
> >     [count:sfOutputEscaperArrayDecorator:private] =>
> >     [value:protected] => Array
> >         (
> >             [0] => Array
> >                 (
> >                     [id] => 10
> >                     [name] => www
> >                     [domain_id] => 1
> >                     [DomainFrom] => Array
> >                         (
> >                             [id] => 120
> >                             [domain_to] => 20
> >                             [query_from] => sources12.html
> >                             [query_to] => ok.html
> >                             [http_type] => 301
> >                             [rank] => 1
> >                         )
> >
> >                 )
> >
> >             [1] => Array
> >                 (
> >                     [id] => 20
> >                     [name] =>
> >                     [domain_id] => 1
> >                     [DomainFrom] => Array
> >                         (
> >                             [id] => 121
> >                             [domain_to] => 10
> >                             [query_from] => sources13.html
> >                             [query_to] => ok.html
> >                             [http_type] => 301
> >                             [rank] => 1
> >                         )
> >
> >                 )
> >
> >             [2] => Array
> >                 (
> >                     [id] => 208
> >                     [name] => toto
> >                     [domain_id] => 1
> >                     [DomainFrom] => Array
> >                         (
> >                             [id] => 150
> >                             [domain_to] => 209
> >                             [query_from] => foot.html
> >                             [query_to] => rugby.php
> >                             [http_type] => 302
> >                             [rank] => 3
> >                         )
> >
> >                 )
> >
> >         )
> >
> >     [escapingMethod:protected] => esc_specialchars
> > )
> >
> > pour info la requête passé directement a MySQL donne :
> > s__id   s__name         s__domain_id    r__id   r__domain_to
>  r__query_from
> > r__query_to     r__http_type    r__rank
> > 10      www     1       120     20      sources12.html  ok.html
> 301     1
> > 20      NULL    1       121     10      sources13.html  ok.html
> 301     1
> > 10      www     1       122     20      sources14.html  ok.html
> 301     1
> > 20      NULL    1       123     10      sources15.html  ok.html
> 301     1
> > 10      www     1       124     20      sources16.html  ok.html
> 301     1
> > 20      NULL    1       125     10      sources17.html  ok.html
> 301     1
> > 10      www     1       126     20      sources18.html  ok.html
> 301     1
> > 20      NULL    1       127     10      sources19.html  ok.html
> 301     1
> > 10      www     1       128     20      sources20.html  ok.html
> 301     1
> > 20      NULL    1       129     10      sources21.html  ok.html
> 301     1
> > 10      www     1       130     20      sources22.html  ok.html
> 301     1
> > 20      NULL    1       131     10      sources23.html  ok.html
> 301     1
> > 10      www     1       132     20      sources24.html  ok.html
> 301     1
> > 20      NULL    1       133     10      sources25.html  ok.html
> 301     1
> > 10      www     1       134     20      sources26.html  ok.html
> 301     1
> > 20      NULL    1       135     10      sources27.html  ok.html
> 301     1
> > 10      www     1       136     20      sources28.html  ok.html
> 301     1
> > 20      NULL    1       137     10      sources29.html  ok.html
> 301     1
> > 10      www     1       138     20      sources30.html  ok.html
> 301     1
> > 20      NULL    1       139     10      sources31.html  ok.html
> 301     1
> > 10      www     1       140     20      sources32.html  ok.html
> 301     1
> > 208     toto    1       150     209     foot.html       rugby.php
> 302     3
> >
> > Il me manque toute les donnée en "double" pour www et NULL
> >
>

--~--~---------~--~----~------------~-------~--~----~
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 à