当前位置: 首页>>代码示例>>PHP>>正文


PHP ModelCriteria::addJoinObject方法代码示例

本文整理汇总了PHP中ModelCriteria::addJoinObject方法的典型用法代码示例。如果您正苦于以下问题:PHP ModelCriteria::addJoinObject方法的具体用法?PHP ModelCriteria::addJoinObject怎么用?PHP ModelCriteria::addJoinObject使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在ModelCriteria的用法示例。


在下文中一共展示了ModelCriteria::addJoinObject方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。

示例1: create

 public static function create(\ModelCriteria $q, $relation, $relationAlias = null, $joinType = \Criteria::INNER_JOIN)
 {
     $tableMap = $q->getTableMap();
     $relationMap = $tableMap->getRelation($relation);
     // create a Join object for this join
     $join = new static();
     $join->setJoinType($joinType);
     $join->setRelationMap($relationMap, $q->getModelAlias(), $relationAlias);
     if ($previousJoin = $q->getPreviousJoin()) {
         $join->setPreviousJoin($previousJoin);
     }
     // add the ModelJoin to the current object
     if ($relationAlias) {
         $q->addAlias($relationAlias, $relationMap->getRightTable()->getName());
         $q->addJoinObject($join, $relationAlias);
     } else {
         $q->addJoinObject($join, $relationMap->getRightTable()->getName());
     }
     return $join;
 }
开发者ID:karser,项目名称:GlorpenPropelBundle,代码行数:20,代码来源:PlainModelJoin.php

示例2: testJoinDuplicate

 public function testJoinDuplicate()
 {
     $c = new ModelCriteria('bookstore', 'Author');
     $c->addJoinObject(new Join('tbl.COL1', 'tbl.COL2', 'LEFT JOIN'));
     $c->addJoinObject(new Join('tbl.COL1', 'tbl.COL2', 'LEFT JOIN'));
     $this->assertEquals(1, count($c->getJoins()), 'Expected not to have duplicate LEFT JOIN added.');
     $c->addJoinObject(new Join('tbl.COL1', 'tbl.COL2', 'RIGHT JOIN'));
     $c->addJoinObject(new Join('tbl.COL1', 'tbl.COL2', 'RIGHT JOIN'));
     $this->assertEquals(2, count($c->getJoins()), 'Expected 1 new right join to be added.');
     $c->addJoinObject(new Join('tbl.COL1', 'tbl.COL2'));
     $c->addJoinObject(new Join('tbl.COL1', 'tbl.COL2'));
     $this->assertEquals(3, count($c->getJoins()), 'Expected 1 new implicit join to be added.');
     $c->addJoinObject(new Join('tbl.COL1', 'tbl.COL2', 'INNER JOIN'));
     $this->assertEquals(3, count($c->getJoins()), 'Expected to not add any new join
                                                     as INNER JOIN is default joinType and it is already added');
     $c->addJoinObject(new Join('tbl.COL3', 'tbl.COL4'));
     $this->assertEquals(4, count($c->getJoins()), "Expected new col join to be added.");
 }
开发者ID:kalaspuffar,项目名称:php-orm-benchmark,代码行数:18,代码来源:ModelCriteriaTest.php


注:本文中的ModelCriteria::addJoinObject方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。