本文整理匯總了PHP中DboSource::buildAssociationQuery方法的典型用法代碼示例。如果您正苦於以下問題:PHP DboSource::buildAssociationQuery方法的具體用法?PHP DboSource::buildAssociationQuery怎麽用?PHP DboSource::buildAssociationQuery使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在類DboSource
的用法示例。
在下文中一共展示了DboSource::buildAssociationQuery方法的1個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的PHP代碼示例。
示例1: testGenerateAssociationQueryHasAndBelongsToManyWithPageAndLimit
/**
* testGenerateAssociationQueryHasAndBelongsToManyWithPageAndLimit method
*
* @return void
*/
public function testGenerateAssociationQueryHasAndBelongsToManyWithPageAndLimit()
{
$this->Model = new TestModel4();
$this->Model->schema();
$this->_buildRelatedModels($this->Model);
$backup = $this->Model->hasAndBelongsToMany['TestModel7'];
$this->Model->hasAndBelongsToMany['TestModel7']['page'] = 2;
$this->Model->hasAndBelongsToMany['TestModel7']['limit'] = 5;
$binding = array('type' => 'hasAndBelongsToMany', 'model' => 'TestModel7');
$queryData = array();
$params =& $this->_prepareAssociationQuery($this->Model, $queryData, $binding);
$result = $this->Dbo->generateAssociationQuery($this->Model, $params['linkModel'], $params['type'], $params['assoc'], $params['assocData'], $queryData, $params['external']);
$this->assertRegExp('/^SELECT\\s+`TestModel7`\\.`id`, `TestModel7`\\.`name`, `TestModel7`\\.`created`, `TestModel7`\\.`updated`, `TestModel4TestModel7`\\.`test_model4_id`, `TestModel4TestModel7`\\.`test_model7_id`\\s+/', $result);
$this->assertRegExp('/\\s+FROM\\s+\\S+`test_model7`\\s+AS\\s+`TestModel7`\\s+JOIN\\s+\\S+`test_model4_test_model7`\\s+AS\\s+`TestModel4TestModel7`/', $result);
$this->assertRegExp('/\\s+ON\\s+\\(`TestModel4TestModel7`\\.`test_model4_id`\\s+=\\s+{\\$__cakeID__\\$}/', $result);
$this->assertRegExp('/\\s+AND\\s+`TestModel4TestModel7`\\.`test_model7_id`\\s+=\\s+`TestModel7`\\.`id`\\)\\s+WHERE\\s+/', $result);
$this->assertRegExp('/\\s+(?:\\()?1\\s+=\\s+1(?:\\))?\\s*\\s+LIMIT 5,\\s*5\\s*$/', $result);
$result = $this->Dbo->buildAssociationQuery($this->Model, $queryData);
$this->assertRegExp('/^SELECT\\s+`TestModel4`\\.`id`, `TestModel4`\\.`name`, `TestModel4`\\.`created`, `TestModel4`\\.`updated`\\s+/', $result);
$this->assertRegExp('/\\s+FROM\\s+\\S+`test_model4` AS `TestModel4`\\s+WHERE\\s+(?:\\()?1\\s+=\\s+1(?:\\))?\\s*$/', $result);
$this->Model->hasAndBelongsToMany['TestModel7'] = $backup;
}