【发布时间】:2018-05-08 19:13:09
【问题描述】:
我们从另一家公司接手了一个项目,需要更新他们的 TYPO3。我们现在是最近的 8.7.13。
有一个产品扩展将产品、组和项目过滤到一个视图中。由于未知原因,以下输出了2个产品,它们都是相同的:
public function findByObjekt($uid) {
$query = $this->createQuery();
$query->matching(
$query->contains('objekte', $uid),
$query->equals('objekte.hidden',0),
$query->equals('objekte.deleted',0)
);
$query->getQuerySettings()->setRespectStoragePage(FALSE);
$query->getQuerySettings()->setRespectSysLanguage(FALSE);
return $query->execute();
}
有没有办法在将重复的条目/对象返回到控制器进行输出之前删除它们?我检查了多个文档,但找不到获得唯一结果的方法(即可能不需要通常...)。另一个想法是处理流体模板中的重复逻辑,但我猜这是一个相当糟糕的解决方案。
【问题讨论】:
-
数据库表中是否存在具有相同UID的产品?我认为
$query->equals('objekte', $uid),更具体。 -
@HeinzSchilling 不,UID 始终是唯一的。由于这种关系,equals 不能工作。
-
是多语言网站吗?
-
@Martin 是的。默认是英语,其次是德语。该系统旨在获取默认语言数据集并将翻译用于输出。