[英]TYPO3 Extbase - Query only records within a certain uid range
如何僅呈現特定uid范圍內的記錄? 假設我只想呈現uid大於100且小於200的記錄
/**
* action list
*
* @return void
*/
public function listAction() {
$this->view->assign('records', $this->testRepository->findAll());
}
我需要使用MathUtility嗎?它是isIntegerInRange ...但是如何?
在存儲庫中使用您自己的函數。
控制者
/**
* action list
*
* @param integer $minUid
* @param integer $maxUid
* @return void
*/
public function listAction() {
$this->view->assign('records', $this->testRepository->findUidRange($minUid,$maxUid));
}
資料庫
/**
* Find records filtered by uid from to
*
* @param integer $minUid
* @param integer $maxUid
* @return \TYPO3\CMS\Extbase\Persistence\QueryResultInterface|array The query result
*/
public function findUidRange($minUid = NULL, $maxUid = NULL) {
$query = $this->createQuery();
return $query->matching(
$query->logicalAnd(
$query->greaterThan('uid', $minUid),
$query->lessThan('uid', $maxUid),
$query->equals('deleted', 0)
))->execute();
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.