本文整理汇总了PHP中Doctrine_Query::setConnection方法的典型用法代码示例。如果您正苦于以下问题:PHP Doctrine_Query::setConnection方法的具体用法?PHP Doctrine_Query::setConnection怎么用?PHP Doctrine_Query::setConnection使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Doctrine_Query
的用法示例。
在下文中一共展示了Doctrine_Query::setConnection方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: updateRoleData
/**
* Updates the simple role data
* @param NsmRole $role
* @param AgaviRequestDataHolder $rd
* @return boolean
* @author Marius Hein
*/
public function updateRoleData(NsmRole &$role, AgaviRequestDataHolder &$rd)
{
AppKitDoctrineUtil::updateRecordsetFromArray($role, $rd->getParameters(), self::$editableAttributes);
// Checking the principal
if (!$role->NsmPrincipal->principal_id) {
$role->NsmPrincipal->principal_type = NsmPrincipal::TYPE_ROLE;
}
if ($role->role_id === null) {
// insert a new role
$role->save();
} else {
// update role
$parts = array();
$params = array();
foreach ($role as $property => $value) {
if ($property == "role_id" || !in_array($property, self::$editableAttributes)) {
continue;
}
if ($value === null) {
$parts[] = "{$property} = NULL";
} else {
$parts[] = "{$property} = ? ";
$params[] = $value;
}
}
$params[] = $role->role_id;
$dql = "UPDATE NsmRole SET " . implode(",", $parts) . " WHERE role_id = ?";
AppKitLogger::warn("Test: %s - %s", $dql, var_export($params, true));
$query = new Doctrine_Query();
$query->setConnection(AppKitDoctrineUtil::getConnection());
$query->parseDqlQuery($dql);
$query->execute($params);
}
return true;
}