gpt4 book ai didi

symfony - Doctrine ordering to many associations and matching Criteria

转载 作者:行者123 更新时间:2023-12-03 23:47:32 25 4
gpt4 key购买 nike

我有一个具有 OneToMany 关联的实体。在这个关联中,我定义了一个 orderby,当我检索它时它工作正常。

class client {
...
/**
* @ORM\OneToMany(targetEntity="Reservation", mappedBy="client")
* @ORM\OrderBy({"reservation_date" = "DESC"})
*/
protected $reservations;

....

public function getReservations()
{
return $this->reservations;
}

....
}
getReservations 方法工作正常,它检索由 Reservations 字段排序的所有 reservation_date。但是如果我添加这个方法:
public function getActiveReservations() {
$activeCriteria = Criteria::create()
->where(Criteria::expr()->eq("active", true));

return $this->getReservations()->matching($activeCriteria);
}

匹配条件会弄乱所有结果,并且不按 reservation_field 排序。

如何在匹配条件后保留顺序?

最佳答案

正如评论中所说,您可以使用 Criteria::orderBy(array $orderings)
IE。

$activeCriteria = Criteria::create()
->where(Criteria::expr()->eq("active", true))
->orderBy(array('reservation_date' => Criteria::DESC));

Doctrine 非常完整,如果您在 documentation 中找不到答案,也不要犹豫,打开类(class)并尝试,它也非常完整。

关于symfony - Doctrine ordering to many associations and matching Criteria,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35224657/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com