本文整理汇总了PHP中Doctrine_Table::createQuery方法的典型用法代码示例。如果您正苦于以下问题:PHP Doctrine_Table::createQuery方法的具体用法?PHP Doctrine_Table::createQuery怎么用?PHP Doctrine_Table::createQuery使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Doctrine_Table
的用法示例。
在下文中一共展示了Doctrine_Table::createQuery方法的7个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: getQuery
/**
* Return a query object, creating a new one if needed.
*
* @param Doctrine_Query $query
* @return Doctrine_Query
*/
public function getQuery(Doctrine_Query $query = null)
{
if (is_null($query)) {
$query = parent::createQuery('variation');
}
return $query;
}
示例2: createQuery
public function createQuery($alias = '')
{
//By default, collection is ordered by length descending. This prevents word overlap
// ex: 'my word' will match before 'word'. More "specific" Hyperwords match first
$q = parent::createQuery($alias);
$q->select('*, LENGTH(name) as length')->orderBy('length DESC');
return $q;
}
示例3: testWriteWithChangedColumnMap
/**
* @covers Robo47_Log_Writer_DoctrineTable::_write
*/
public function testWriteWithChangedColumnMap()
{
$mapping = array('message' => 'foo', 'priority' => 'baa', 'category' => 'blub', 'timestamp' => 'baafoo');
$this->_writer->setTable($this->_table2);
$this->_writer->setColumnMap($mapping);
$this->assertEquals(0, $this->_table2->count());
$date = date('c');
$event = array('message' => 'Foo', 'priority' => 0, 'category' => 'bla', 'timestamp' => $date);
$this->_writer->write($event);
$this->assertEquals(1, $this->_table2->count());
$entry = $this->_table2->createQuery()->select()->execute()->getFirst();
$this->assertEquals($event['message'], $entry->foo);
$this->assertEquals($event['priority'], $entry->baa);
$this->assertEquals($event['category'], $entry->blub);
$this->assertEquals($event['timestamp'], $entry->baafoo);
}
示例4: loadRelated
/**
* Load all relationships or the named relationship passed
*
* @param mixed $name
* @return boolean
*/
public function loadRelated($name = null)
{
$list = array();
$query = $this->_table->createQuery();
if ( ! isset($name)) {
foreach ($this->data as $record) {
$value = $record->getIncremented();
if ($value !== null) {
$list[] = $value;
}
}
$query->where($this->_table->getComponentName() . '.id IN (' . substr(str_repeat("?, ", count($list)),0,-2) . ')');
if ( ! $list) {
$query->where($this->_table->getComponentName() . '.id IN (' . substr(str_repeat("?, ", count($list)),0,-2) . ')', $list);
}
return $query;
}
$rel = $this->_table->getRelation($name);
if ($rel instanceof Doctrine_Relation_LocalKey || $rel instanceof Doctrine_Relation_ForeignKey) {
foreach ($this->data as $record) {
$list[] = $record[$rel->getLocal()];
}
} else {
foreach ($this->data as $record) {
$value = $record->getIncremented();
if ($value !== null) {
$list[] = $value;
}
}
}
if ( ! $list) {
return;
}
$dql = $rel->getRelationDql(count($list), 'collection');
$coll = $query->query($dql, $list);
$this->populateRelated($name, $coll);
}
示例5: authenticate
/**
* @return Zend_Auth_Result
*/
public function authenticate()
{
//FIXME: Check if this querying actually works or not...
$result = $this->_table->createQuery("dctrn_find")->where("{$this->_credentialCol} = ?", $this->_credential)->andWhere("{$this->_identityCol} = ?", $this->_identity)->execute(array());
return new Zend_Auth_Result($result[0]->id ? Zend_Auth_Result::SUCCESS : Zend_Auth_Result::FAILURE, $result[0]->id ? $result[0] : null);
}
示例6: createQuery
/**
* By default, collection is ordered by length descending. This prevents word overlap
* ex: 'my word' will match before 'word'. More "specific" Keywords match first
*
* @author Brent Shaffer
*/
public function createQuery($alias = '')
{
$q = parent::createQuery($alias);
$q->select('*, LENGTH(name) as length')->orderBy('length DESC');
return $q;
}
示例7: createQuery
/**
* (non-PHPdoc)
* @see Doctrine_Table::createQuery()
* @return dmDoctrineQuery
*/
public function createQuery($alias = '')
{
return parent::createQuery($alias);
}