0
我正在CakePHP中構建一個站點。我有兩個表,「類別」和「公司」和第三個是加入他們所謂的「companies_categories」:CakePHP 2.0 - 基於關係表的訂單
companies_categories
`id` int(10) NOT NULL AUTO_INCREMENT,
`company_id` int(10) NOT NULL,
`category_id` int(10) NOT NULL,
我想基於公司在類別數量列出前10個類別,但我不知道如何去做。
這裏是我的模型:
class Company extends AppModel {
public $name = 'Company';
var $hasAndBelongsToMany = array(
'Category' =>
array(
'className' => 'Category',
'joinTable' => 'companies_categories',
'foreignKey' => 'company_id',
'associationForeignKey' => 'category_id',
'unique' => true,
)
);
}
class Category extends AppModel {
public $name = 'Category';
public $useTable = 'categories';
// Set up the relationships
var $hasAndBelongsToMany = array(
'Company' =>
array(
'className' => 'Company',
'joinTable' => 'companies_categories',
'foreignKey' => 'category_id',
'associationForeignKey' => 'company_id',
'unique' => true,
)
);
}
我忘了提及,我不能使用counterCache作爲頂部10個類別列表取決於用戶來自400多個城市的列表所在的城市。 – 2012-08-08 20:50:56
那麼第一部分仍然適用。不需要counterCache – tigrang 2012-08-08 20:52:18