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);
파일 보기
프로젝트 열기: kdyby/doctrine
1 사용 예제들
공개 프로퍼티들
공개 메소드들
메소드 |
설명 |
|
__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 |
|
|
비공개 메소드들
메소드 상세
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 |
|
public fetch ( Kdyby\Persistence\Queryable $repository, integer $hydrationMode = AbstractQuery::HYDRATE_OBJECT ) : ResultSet | array |
$repository |
Kdyby\Persistence\Queryable |
|
$hydrationMode |
integer |
|
리턴 |
ResultSet | array |
|
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 |
|
public getLastQuery ( ) : Doctrine\ORM\Query |
리턴 |
Doctrine\ORM\Query |
|
protected getQuery ( Kdyby\Persistence\Queryable $repository ) : Doctrine\ORM\Query |
$repository |
Kdyby\Persistence\Queryable |
|
리턴 |
Doctrine\ORM\Query |
|
프로퍼티 상세
public array $onPostFetch |
리턴 |
array |
|