我在一个Symfony2项目中使用KnpPaginatorBundle。我有两个具有manyToOne关系的实体。
/**
* @ORM\Entity
* @ORM\Table(name="foo")
*/
class foo {
...
/**
* @ORM\ManyToOne(targetEntity="abc\DemoBundle\Entity\Bar")
* @ORM\JoinColumn(name="bar_id", referencedColumnName="id")
*/
protected $bar;
...
}
/**
* @ORM\Entity
* @ORM\Table(name="bar")
*/
class Bar {
...
/**
* @ORM\Column(type="string", length=50, nullable=true)
*/
protected $name;
...
}现在,我想使用KnpPaginatorBundle进行排序
<{{ entities.sortable('bar', 'i.bar')|raw }}我收到以下错误消息
There is no such field [bar] in the given Query component, aliased by [i]有没有办法使用bar.name使foo中的栏可排序?
干杯
发布于 2012-07-22 17:35:19
必须将表连接到要提供给KnpPaginatorBundle的查询中
SELECT i
FROM abc\DemoBundle\Entity\Bar i
JOIN i.bar b 现在,您可以使用以下内容进行排序:
<{{ entities.sortable('bar', 'b.name')|raw }}>发布于 2012-05-03 23:10:26
我相信sortable有一个标签和一个列。所以你可能是在找
<{{ entities.sortable('Name', 'i.name')|raw }}https://stackoverflow.com/questions/10318940
复制相似问题