Sonata Admin - 按计算值排序

时间:2017-12-01 10:04:15

标签: symfony sonata-admin

有没有办法让Sonata Admin列表中的列使用计算值作为排序?

这样的事情:(这不起作用)

    $mapper->add('stock', null, [
        'sortable' => '(stock.real - stock.inCustomerOrder)',
    ]);

2 个答案:

答案 0 :(得分:0)

由于2个值来自同一个表,那么添加一个真正的列呢? (并且使用Doctrine监听器,您可以在实体更改时保持同步)。

或者,您可以在此处的文档中覆盖Sonata生成的查询:https://sonata-project.org/bundles/admin/master/doc/reference/action_list.html#customizing-the-query-used-to-generate-the-list

答案 1 :(得分:0)

由于排序基于数据库查询,因此无法按虚拟/计算字段排序。