d4n*_*y3l 5 typo3 fluid extbase
我有一个与 具有1:n关系的item对象。可以说类别是一个数值。categories
我尝试使用 setOrderings() 按类别对所有项目进行排序,但它不起作用。
//inside findAll() in my ItemRepository
$query->setOrderings(array("item.categories" => \TYPO3\CMS\Extbase\Persistence\QueryInterface::ORDER_DESCENDING));
Run Code Online (Sandbox Code Playgroud)
我怎样才能让我的查询根据其子对象对所有项目进行排序categories?
编辑:示例
Item1 具有类别[1,2,8],Item2 具有类别[1,2,5],因此升序排序顺序为:Item2、Item1
我认为,
$query->setOrderings(array("item.categories" => \TYPO3\CMS\Extbase\Persistence\QueryInterface::ORDER_DESCENDING));
Run Code Online (Sandbox Code Playgroud)
这里的“item.categories”是一个数组变量,这就是它不起作用的原因。
因此,您必须在每个项目的项目对象内创建一个新元素(例如:item.categorie)(您根据最大类别编号进行排序,“item.categorie”的值应该是这个最大类别编号)。现在“item.categorie”将是一个普通变量,其值为 5 或 8 等...
然后,
$query->setOrderings(array("item.categorie" => \TYPO3\CMS\Extbase\Persistence\QueryInterface::ORDER_DESCENDING));
Run Code Online (Sandbox Code Playgroud)
将工作...
| 归档时间: |
|
| 查看次数: |
933 次 |
| 最近记录: |