setting default value in symfony2 sonata admin bundle setting default value in symfony2 sonata admin bundle symfony symfony

setting default value in symfony2 sonata admin bundle


I presume you've probably already solved this by now, but as a reference to anyone else you can override the getNewInstance() method and set the default value on the object:

public function getNewInstance(){    $instance = parent::getNewInstance();    $instance->setName('my default value');    return $instance;}


you can also assign the default value to the property of the entity directly:

class TheEntity{    private $name = 'default name';}


In addition to @RobMasters solution:

If you want to set a relation you can get a reference from the entitymanager (instead of the complete object):

public function getNewInstance(){    $instance = parent::getNewInstance();    if ($this->hasRequest()) {        $branch = $this->getRequest()->get('branch', null);        if ($branch !== null) {            $entityManager = $this->getModelManager()->getEntityManager('MyBundle\Entity\Branch');            $branchReference = $entityManager->getReference('MyBundle\Entity\Branch', $branch);            $instance->setBranch($branchReference);        }    }    return $instance;}

I added the example to my blog:http://blog.webdevilopers.net/populate-resp-set-default-values-on-form-resp-object-or-instance-in-sonataadminbundle/