With the following code:
class Car extends ActiveRecord\Model {
static $has_many = array(
array("residual_values", "foreign_key" => "slug", "primary_key" => "slug")
);
}
$foo = Car::find($id)->residual_values;
$bar = Car::find($id, array(
"include" => array("residual_values")
));
The generated queries will be:
SELECT * FROM `residual_values` WHERE `slug`='something'
SELECT * FROM `residual_values` WHERE `slug` IN(119)
Eager loading gets it wrong. Queries should be the same:
SELECT * FROM `residual_values` WHERE `slug`='something'
SELECT * FROM `residual_values` WHERE `slug`='something'