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/