Se aggiungi un WHERE
condizione sulle colonne di destra tabella dopo un LEFT JOIN
, lo costringi a comportarsi come un INNER JOIN
.
Soluzione
Estrarre l'espressione nella condizione di LEFT JOIN
.
Secondo la pagina del manuale si hai citato te stesso
:
E:
Potresti aver letto male quella frase.
Questo dovrebbe fare quello che vuoi:
Post.joins('LEFT OUTER JOIN images ON images.post_id = posts.id
AND images.service_name = $$acme$$')
Non sono un esperto di Ruby, ma sto derivando questo dal manuale qui
.
Non sono sicuro di come evitare le virgolette singole, quindi sono passato alle virgolette in dollari.