protected function preConfigure()
    {
        parent::preConfigure();

        $this
            ->addParameterToPropagate('hash')
            ->addFieldGuesser('mandango')
            ->addAction('mandango.crud')

            // batch
            ->addAction(new BatchActionCollection())
            ->addActionOptionProcessor('batch', 'actions', function (array $actions) {
                $actions['delete'] = function ($datas, ContainerInterface $container, $action) {
                    $query = array();
                    if (BatchSelector::ALL !== $datas) {
                        foreach ($datas as &$data) {
                            $data = new \MongoId($data);
                        }
                        $query['_id'] = array('$in' => $datas);
                    }

                    $container->get('mandango')->getRepository($action->getDataClass())->remove($query);
                };

                return $actions;
            })
            ->addActionOptionProcessor('list', 'batch_actions', function (array $actions) {
                $actions['delete'] = 'Delete';

                return $actions;
            })
        ;
    }
    protected function preConfigure()
    {
        parent::preConfigure();

        $this
            ->addAction('doctrine.orm.crud')
            ->addFieldGuesser('doctrine.orm')
        ;
    }
    protected function preConfigure()
    {
        parent::preConfigure();

        $this
            ->addParameterToPropagate('hash')
            ->addFieldGuesser('propel')
            ->addAction('propel.crud');

    }