|
@@ -176,15 +176,23 @@ model_manager
|
|
|
|
|
|
callback
|
|
|
defaults to null. Callable function that can be used to modify the query which is used to retrieve autocomplete items.
|
|
|
+ The callback should receive three parameters - the Admin instance, the property (or properties) defined as searchable and the
|
|
|
+ search value entered by the user.
|
|
|
+
|
|
|
+ From the ``$admin`` parameter it is possible to get the ``Datagrid`` and the ``Request``:
|
|
|
|
|
|
.. code-block:: php
|
|
|
|
|
|
$formMapper
|
|
|
->add('category', 'sonata_type_model_autocomplete', array(
|
|
|
'property'=>'title',
|
|
|
- 'callback' => function ($datagrid, $property, $value) {
|
|
|
+ 'callback' => function ($admin, $property, $value) {
|
|
|
+ $datagrid = $admin->getDatagrid();
|
|
|
$queryBuilder = $datagrid->getQuery();
|
|
|
- $queryBuilder->andWhere($queryBuilder->getRootAlias() . '.enabled=1 ');
|
|
|
+ $queryBuilder
|
|
|
+ ->andWhere($queryBuilder->getRootAlias() . '.foo=:barValue')
|
|
|
+ ->setParameter('barValue', $admin->getRequest()->get('bar'))
|
|
|
+ ;
|
|
|
$datagrid->setValue($property, null, $value);
|
|
|
},
|
|
|
)
|