Symfony 2 Doctrine find by order array of id

2022-08-30 17:46:24

我正在寻找一种使用in的方法,以使用id的有序数组查找项目。DoctrineSymfony 2

我有一个带有 id(主键)和标题的卡片实体。

我有一个带有id(主键)和listCards(编码的id数组)的ListCards实体:["16", "2", "84"])

我首先获取列表,然后我需要按该顺序查找具有这些ID的卡。

我尝试类似的东西:

$idsArray = ["16", "2", "84"];
$cardRepository->findby($idsArray);

按顺序获取我的卡。DoctrineASC

ORDER BY FIEDSsql方法似乎不受学说的支持。

对于这种排序,有什么简单的解决方案吗?

谢谢(对不起我的英语不好)。


答案 1

你可以像这样使用它:

$cardRepository->findBy( array('id' => $idsArray), array('id' => 'DESC') );

另请查看官方原则文档,了解有关如何在方法中使用排序、限制和偏移作为第二到第四个参数的更多详细信息。findBy


答案 2

您可以创建一个帮助程序表,在其中存储有序的组元素,其中包含以下数据:(group_id, card_id, order)

按_id搜索,按顺序排序并阅读 .groupordercard_id


推荐