本文整理匯總了PHP中CounterCachePost::updateAll方法的典型用法代碼示例。如果您正苦於以下問題:PHP CounterCachePost::updateAll方法的具體用法?PHP CounterCachePost::updateAll怎麽用?PHP CounterCachePost::updateAll使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在類CounterCachePost
的用法示例。
在下文中一共展示了CounterCachePost::updateAll方法的1個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的PHP代碼示例。
示例1: testToggleBoolFields
public function testToggleBoolFields()
{
$this->loadFixtures('CounterCacheUser', 'CounterCachePost');
$Post = new CounterCachePost();
$Post->unbindModel(array('belongsTo' => array('User')), true);
$true = array('Post' => array('published' => true, 'id' => 2));
$false = array('Post' => array('published' => false, 'id' => 2));
$fields = array('Post.published', 'Post.id');
$updateConditions = array('Post.id' => 2);
// check its true
$result = $Post->find('first', array('conditions' => $updateConditions, 'fields' => $fields));
$this->assertEquals($true, $result);
// Testing without the alias
$this->assertTrue($Post->updateAll(array('published' => 'NOT published'), $updateConditions));
$result = $Post->find('first', array('conditions' => $updateConditions, 'fields' => $fields));
$this->assertEquals($false, $result);
$this->assertTrue($Post->updateAll(array('published' => 'NOT published'), $updateConditions));
$result = $Post->find('first', array('conditions' => $updateConditions, 'fields' => $fields));
$this->assertEquals($true, $result);
$db = ConnectionManager::getDataSource('test');
$alias = $db->name('Post.published');
// Testing with the alias
$this->assertTrue($Post->updateAll(array('Post.published' => "NOT {$alias}"), $updateConditions));
$result = $Post->find('first', array('conditions' => $updateConditions, 'fields' => $fields));
$this->assertEquals($false, $result);
$this->assertTrue($Post->updateAll(array('Post.published' => "NOT {$alias}"), $updateConditions));
$result = $Post->find('first', array('conditions' => $updateConditions, 'fields' => $fields));
$this->assertEquals($true, $result);
}