Php 基于相关表数据计数的订单数据
我有两个差异表,如下所示: 用户和帖子 需要从用户的表中按职位计数表排序的数据 关系定义为:Php 基于相关表数据计数的订单数据,php,cakephp,cakephp-2.0,Php,Cakephp,Cakephp 2.0,我有两个差异表,如下所示: 用户和帖子 需要从用户的表中按职位计数表排序的数据 关系定义为: User Model: public $hasMany = array('Post'); Post Model Public $belongsTo = array('User'); 计数器缓存-缓存您的计数() 此函数帮助您缓存相关数据的计数。模型本身不通过find('count')手动计算记录,而是跟踪相关$hasMany模型的任何添加/删除,并增加/减少父模型表中的专用整数字段 字段名称由单
User Model:
public $hasMany = array('Post');
Post Model
Public $belongsTo = array('User');
计数器缓存-缓存您的计数() 此函数帮助您缓存相关数据的计数。模型本身不通过find('count')手动计算记录,而是跟踪相关$hasMany模型的任何添加/删除,并增加/减少父模型表中的专用整数字段 字段名称由单数模型名称、下划线和单词“count”组成:
my_model_count
假设您有一个名为ImageComment的模型和一个名为Image的模型,您将向Image表中添加一个新的INT字段,并将其命名为Image\u comment\u count
一旦你添加了计数器字段,你就可以开始了。通过添加计数器缓存键激活关联中的计数器缓存,并将值设置为真:
<?php
class Image extends AppModel {
public $belongsTo = array(
'ImageAlbum' => array('counterCache' => true)
);
}
您需要SQL中的da解决方案吗?我更喜欢cakephpformat@ArunJain:我见过这个问题,但是cakephp格式的数据检索有什么解决方案吗..看到这个url了吗
<?php
class Image extends AppModel {
public $belongsTo = array(
'ImageAlbum' => array(
'counterCache' => true,
'counterScope' => array('Image.active' => 1) // only count if "Image" is active = 1
));
}