小编Car*_*edo的帖子

TYPO3 v12 存储库,带约束的查询

自 TYPO3 v12 以来,在存储库查询中使用约束不再像以前那样工作。

public function findByDate(
   $dateFrom = null, 
   $dateTill = null, 
   $isAdmin = false, 
   $tags = [], 
   $keyword = ''
): QueryResultInterface
{
   $query = $this->createQuery();
   $query->getQuerySettings()->setIgnoreEnableFields(TRUE);
   $query->getQuerySettings()->setEnableFieldsToBeIgnored(['starttime','endtime']);

   $constraints = [];
   if ($keyword != '') {
      $constraints[] = $query->like('titel', '%'.$keyword.'%' );
   }else{
      if (isset($dateFrom) && isset($dateTill)) {
         $constraints[] = $query->logicalAnd(
            $query->lessThan('startdate', $dateTill->getTimestamp()),
            $query->greaterThan('startdate', $dateFrom->getTimestamp()),
         );
      }
   }

   if (count($tags) > 0) {
      $constraints[] = $query->logicalOr(
         $query->in('tags.uid', $tags)
      );
   }

   if ($isAdmin == false) {
      $constraints[] = $query->equals('share', true); …
Run Code Online (Sandbox Code Playgroud)

typo3 typo3-extensions typo3-12.x

2
推荐指数
1
解决办法
473
查看次数

标签 统计

typo3 ×1

typo3-12.x ×1

typo3-extensions ×1