Symfony2 CRUD多对多 - 对包含多个项目的列表框进行排序

时间:2012-12-27 02:08:31

标签: symfony many-to-many crud symfony-forms

这可能是一个基本问题,但我现在是Symfony的新手并且目前一无所知。 我有很多关系,其中2个表由第三个链接,其中包含最初2个表的主键。

我使用generate:doctrine:crud。

生成了CRUD

当我在第一个表(表1)中创建数据时,我有一个列表框,其中包含来自第二个表(表2)的许多条目。它实际上是一个很大的列表,可以通过按CTRL选择许多条目。这个巨大的名单真的很难,但它的工作非常精彩。所有表格都填充得很好。

我想按名称ASC对列表框进行排序,但到目前为止还没有找到一种方法。 任何帮助将不胜感激。

代码完全由Symfony2生成。当它为第一个实体(表1)创建实例时,在其构造方法中,它从表2收集数据以显示列表框:

$ this-> table2id = new \ Doctrine \ Common \ Collections \ ArrayCollection();

这是我理解的,但是如何选择这些数据以及如何对其进行排序?

干杯, 埃里克

更新:

我在文档中发现@ORM \ OrderBy可以做到这一点,但它似乎并不适合我。任何人都可以在此注释中发现错误吗?

`/**
 * @var \Doctrine\Common\Collections\Collection`
 *
 * @ORM\ManyToMany(targetEntity="Suburb", inversedBy="workerid")
 * @ORM\JoinTable(name="workersuburb",
 *   joinColumns={
 *     @ORM\JoinColumn(name="WorkerID", referencedColumnName="id")
 *   },
 *   inverseJoinColumns={
 *     @ORM\JoinColumn(name="SuburbID", referencedColumnName="id")
 *   }
 * )
 * @ORM\OrderBy({"SuburbID"="DESC"})
 */
private $suburbid;`

0 个答案:

没有答案