PHP 클래스 Kdyby\Doctrine\QueryObject

QueryObject inheritors are great when you're printing a data to the user, they may be used in service layer but that's not really suggested. Don't be afraid to use them in presenters $this->template->articles = $this->articlesRepository->fetch(new ArticlesQuery()); or in more complex ways $productsQuery = new ProductsQuery(); $productsQuery ->setColor('green') ->setMaxDeliveryPrice(100) ->setMaxDeliveryMinutes(75); $productsQuery->size = 'big'; $this->template->products = $this->productsRepository->fetch($productsQuery);
저자: Filip Procházka ([email protected])
상속: extends Nette\Object, implements Kdyby\Persistence\Query
파일 보기 프로젝트 열기: kdyby/doctrine 1 사용 예제들

공개 프로퍼티들

프로퍼티 타입 설명
$onPostFetch array

공개 메소드들

메소드 설명
__construct ( )
count ( Kdyby\Persistence\Queryable $repository, ResultSet $resultSet = NULL, Doctrine\ORM\Tools\Pagination\Paginator $paginatedQuery = NULL ) : integer
fetch ( Kdyby\Persistence\Queryable $repository, integer $hydrationMode = AbstractQuery::HYDRATE_OBJECT ) : ResultSet | array
fetchOne ( Kdyby\Persistence\Queryable $repository ) : object If You encounter a problem with the LIMIT 1 here, you should instead of fetching toMany relations just use postFetch.
getLastQuery ( ) : Doctrine\ORM\Query
postFetch ( Kdyby\Persistence\Queryable $repository, Iterator $iterator ) : void

보호된 메소드들

메소드 설명
doCreateCountQuery ( Kdyby\Persistence\Queryable $repository ) : Doctrine\ORM\Query | Doctrine\ORM\QueryBuilder
doCreateQuery ( Kdyby\Persistence\Queryable $repository ) : Doctrine\ORM\Query | Doctrine\ORM\QueryBuilder
getQuery ( Kdyby\Persistence\Queryable $repository ) : Doctrine\ORM\Query

비공개 메소드들

메소드 설명
toQuery ( $query )

메소드 상세

__construct() 공개 메소드

public __construct ( )

count() 공개 메소드

public count ( Kdyby\Persistence\Queryable $repository, ResultSet $resultSet = NULL, Doctrine\ORM\Tools\Pagination\Paginator $paginatedQuery = NULL ) : integer
$repository Kdyby\Persistence\Queryable
$resultSet ResultSet
$paginatedQuery Doctrine\ORM\Tools\Pagination\Paginator
리턴 integer

doCreateCountQuery() 보호된 메소드

protected doCreateCountQuery ( Kdyby\Persistence\Queryable $repository ) : Doctrine\ORM\Query | Doctrine\ORM\QueryBuilder
$repository Kdyby\Persistence\Queryable
리턴 Doctrine\ORM\Query | Doctrine\ORM\QueryBuilder

doCreateQuery() 추상적인 보호된 메소드

abstract protected doCreateQuery ( Kdyby\Persistence\Queryable $repository ) : Doctrine\ORM\Query | Doctrine\ORM\QueryBuilder
$repository Kdyby\Persistence\Queryable
리턴 Doctrine\ORM\Query | Doctrine\ORM\QueryBuilder

fetch() 공개 메소드

public fetch ( Kdyby\Persistence\Queryable $repository, integer $hydrationMode = AbstractQuery::HYDRATE_OBJECT ) : ResultSet | array
$repository Kdyby\Persistence\Queryable
$hydrationMode integer
리턴 ResultSet | array

fetchOne() 공개 메소드

And if you really really need to hack it, just override this method and remove the limit.
public fetchOne ( Kdyby\Persistence\Queryable $repository ) : object
$repository Kdyby\Persistence\Queryable
리턴 object

getLastQuery() 공개 메소드

public getLastQuery ( ) : Doctrine\ORM\Query
리턴 Doctrine\ORM\Query

getQuery() 보호된 메소드

protected getQuery ( Kdyby\Persistence\Queryable $repository ) : Doctrine\ORM\Query
$repository Kdyby\Persistence\Queryable
리턴 Doctrine\ORM\Query

postFetch() 공개 메소드

public postFetch ( Kdyby\Persistence\Queryable $repository, Iterator $iterator ) : void
$repository Kdyby\Persistence\Queryable
$iterator Iterator
리턴 void

프로퍼티 상세

$onPostFetch 공개적으로 프로퍼티

public array $onPostFetch
리턴 array