获取与Doctrine的OneToMany关系的最后一个元素

时间:2012-09-03 01:28:41

标签: symfony one-to-many

我有一个“学生”模型,与使用Doctrine的Symfony2中的许多“Transfer”元素相关。

如何以有效的方式访问与当前“学生”相关的最后一个“转移”元素?

也就是说,例如,在“Student”类中创建类似“getLastTransfer()”的方法。

我听说不建议在模态中使用实体管理器,以便能够对其使用依赖注入等...

谢谢

1 个答案:

答案 0 :(得分:18)

假设您的Transfer实体有一个date字段,Student类似乎如下:

class Student
{
    // ...

    /**
     * @OneToMany(targetEntity="Transfer" mappedBy="student")
     * @OrderBy({"date" = "ASC"})
     */
    private $transfers;

    // ...

}

转移存储在ArrayCollection中,因此请致电:

$student -> getTransfers() -> last();