I patched my SfPeerBuilder.php file so that the way the doSelectJoin*
methods use LEFT_JOIN or INNER_JOIN instead of always implicit inner
join :
- If column is foreign and required : replace "->addJoin(column, ...)"
with "->addJoin(column, ..., Criteria::INNER_JOIN)"
- If column is foreign and not required : replace "-
>addJoin(column, ...)" with "->addJoin(column, ...,
Criteria::LEFT_JOIN)"

This way we can use "doSelectJoinAll" in admin generators without the
risk of having rows not displayed only because the query is not what
it should be : if the foreign key is not required, we can have NULL,
and then the implicit inner join will just ignore those rows, which is
very annoying.
Anyway using a (implicit) INNER JOIN on not required foreign keys is a
real mistake in my opinion (and I don't get why Propel does generate
that).

I see no issue in my project, but i didn't ran all the unit tests yet.

Did I miss something ? I suppose there are already existing threads
about this, but I didn't find them ? Is there a reason that Propel
always does implicit inner joins instead of explicit joins, left or
inner, depending on the "required" param ?
--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups 
"symfony developers" group.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to [EMAIL PROTECTED]
For more options, visit this group at 
http://groups.google.com/group/symfony-devs?hl=en
-~----------~----~----~----~------~----~------~--~---

Reply via email to