本文整理汇总了PHP中CounterCacheUser类的典型用法代码示例。如果您正苦于以下问题:PHP CounterCacheUser类的具体用法?PHP CounterCacheUser怎么用?PHP CounterCacheUser使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。
在下文中一共展示了CounterCacheUser类的3个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的PHP代码示例。
示例1: testDeleteUpdatingCounterCacheCorrectly
/**
* test that delete() updates the correct records counterCache() records.
*
* @return void
*/
public function testDeleteUpdatingCounterCacheCorrectly()
{
$this->loadFixtures('CounterCacheUser', 'CounterCachePost');
$User = new CounterCacheUser();
$User->Post->delete(3);
$result = $User->read(null, 301);
$this->assertEquals(0, $result['User']['post_count']);
$result = $User->read(null, 66);
$this->assertEquals(2, $result['User']['post_count']);
}
开发者ID:pritten,项目名称:SmartCitizen.me,代码行数:15,代码来源:ModelDeleteTest.php
示例2: testCounterCacheSkip
/**
* Tests that counter caches are unchanged when using 'counterCache' => false
*
* @return void
*/
public function testCounterCacheSkip()
{
$this->loadFixtures('CounterCacheUser', 'CounterCachePost');
$User = new CounterCacheUser();
$Post = new CounterCachePost();
$data = $Post->find('first', array('conditions' => array('id' => 1), 'recursive' => -1));
$data[$Post->alias]['user_id'] = 301;
$Post->save($data, array('counterCache' => false));
$users = $User->find('all', array('order' => 'User.id'));
$this->assertEquals(2, $users[0]['User']['post_count']);
$this->assertEquals(1, $users[1]['User']['post_count']);
}
开发者ID:manzapanza,项目名称:cakephp-api-utils,代码行数:17,代码来源:ModelWriteTest.php
示例3: testCounterCacheMultipleCaches
/**
* Tests having multiple counter caches for an associated model
*
* @access public
* @return void
*/
public function testCounterCacheMultipleCaches()
{
$this->loadFixtures('CounterCacheUser', 'CounterCachePost');
$User = new CounterCacheUser();
$Post = new CounterCachePost();
$Post->unbindModel(array('belongsTo' => array('User')), false);
$Post->bindModel(array('belongsTo' => array('User' => array('className' => 'CounterCacheUser', 'foreignKey' => 'user_id', 'counterCache' => array(true, 'posts_published' => array('Post.published' => true))))), false);
// Count Increase
$user = $User->find('first', array('conditions' => array('id' => 66), 'recursive' => -1));
$data = array('Post' => array('id' => 22, 'title' => 'New Post', 'user_id' => 66, 'published' => true));
$Post->save($data);
$result = $User->find('first', array('conditions' => array('id' => 66), 'recursive' => -1));
$this->assertEquals(3, $result[$User->alias]['post_count']);
$this->assertEquals(2, $result[$User->alias]['posts_published']);
// Count decrease
$Post->delete(1);
$result = $User->find('first', array('conditions' => array('id' => 66), 'recursive' => -1));
$this->assertEquals(2, $result[$User->alias]['post_count']);
$this->assertEquals(2, $result[$User->alias]['posts_published']);
// Count update
$data = $Post->find('first', array('conditions' => array('id' => 1), 'recursive' => -1));
$data[$Post->alias]['user_id'] = 301;
$Post->save($data);
$result = $User->find('all', array('order' => 'User.id'));
$this->assertEquals(2, $result[0]['User']['post_count']);
$this->assertEquals(1, $result[1]['User']['posts_published']);
}
开发者ID:juliushermosura,项目名称:globeloop,代码行数:33,代码来源:ModelWriteTest.php
注:本文中的CounterCacheUser类示例整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。 |
请发表评论