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