2011-02-01 10 views
1
나는이 액티브를 사용하여 조인 조건을 다음과 표현해야 할

:액티브 조인 구문

SELECT ... 
FROM U 
LEFT OUTER JOIN F ON U.key = F.foreign_key 
AND F.key = ? 
WHERE ... 

? 런타임에 대체됩니다.

joins("LEFT OUTER JOIN F on U.key = F.foreign_key AND F.key=?", key) 

내가 액티브 (이 호출 할 때 무엇이든)이 '동적으로 대체'를 지원하는지 확인 할 수없는 것 :

다음은 SQL 구문 오류가 발생합니다.

WHERE 절에서 제한 (where "F.key =?", key)을 추가하면 OUTER JOIN이 JOIN으로 축소됩니다.

답변

2

이 구문 일 :

joins("LEFT OUTER JOIN F on U.key = F.foreign_key AND F.key=#{key}")