2017-12-01 19 views
6

계산 값을 정렬 기준으로 사용하는 열을 소나타 관리 목록에 포함시킬 수있는 방법이 있습니까? 이 같은소나타 관리 - 계산 된 값으로 주문 목록

뭔가 : (이 작동하지 않음)이 개 값 이후

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

나뭇 가지 태그를 추가 해 보셨나요? ''sortable '=>'{{stocki-real.StockCustomerOrder}} ''잘 모르겠지만 어쨌든 이것은 끔찍한 해킹이 될 것입니다. – np87

+0

그건 작동하지 않습니다. – minychillo

답변

0

진짜 열을 추가하는 방법에 대한, 같은 테이블에서 무엇을오고있다? (그리고 Doctrine 리스너와 함께, 엔티티가 변경되면 동기화를 유지할 수 있습니다).

또는, 당신은 여기에 문서에서 소나타에 의해 생성 된 쿼리, 무시할 수 : 정렬 이후 https://sonata-project.org/bundles/admin/master/doc/reference/action_list.html#customizing-the-query-used-to-generate-the-list

+0

사용자 지정 쿼리에서 조건/where 절을 설정할 수 있습니다. 그러나 파생되거나 계산 된 값으로 정렬 할 수는 없습니다. –

+0

시도하지 않았지만 쿼리를 완전히 다시 작성할 수 있어야합니다. $ 쿼리는 Doctrine QueryBuilder의 래퍼 인 Sonata \ DoctrineORMAdminBundle \ Datagrid \ ProxyQuery입니다. –

0

가 데이터베이스 쿼리에 기반을, 당신이 할 수없는 일종의 가상/계산 필드를 기준으로.