我没有运气试图弯曲 CakePHP 来做我需要的事情。
我有 2 个模型,Listing & ListingService。
ListingService 的字段如下:id, title, listing_id, service_type_id
当我现在进行查找时。(在Listing.php中使用belongsTo)
public $belongsTo = array(
'ListingService' => array(
'className' => 'ListingService',
'foreignKey' => 'id'
)
);
$this->paginate = array('type' => 'all', 'recursive' => 0,
'fields' => array('Listing.id', 'Listing.title',
'ListingService.service_type_id','ListingService.title'),
'limit' => 10
);
这是显示的查询
SELECT `Listing`.`id`, `Listing`.`title`, `ListingService`.`service_type_id`, `ListingService`.`title` FROM `listings` AS `Listing` LEFT JOIN `listing_services` AS `ListingService` ON (`Listing`.`id` = `ListingService`.`id`) LIMIT 10
这几乎是我所需要的,除了我希望 LEFT JOIN 为 ON ( Listing
. id
= ListingService
. listing_id
) 而不是 ON ( Listing
. id
= ListingService
. id
)
如果我使用“hasMany”,它甚至不会执行 LEFT JOIN。
我目前没有 ListingService.php 模型。
请赐教。
谢谢你,
三通