I have two entities (User and Project), with generated CRUD options. Relation between entities is OneToMany bidirectional (user 1 - * project). In project/new, CRUD generated drop-down list for Users, but I want to set logged User automatically, without picking it from drop-down list.
Here is ProjectType/buildForm() function:
public function buildForm(FormBuilderInterface $builder, array $options)
{
$builder
->add('projectTitle')
->add('user')
;
}
Can I set logged User as Project creator in buildForm() (from session?, database?), or somewhere else? Thanks.
Yes in your Controller you probably have something like this:
$entity = new Project();
$form = $this->createEditForm($entity);
You can add the following line inbetween the lines above:
$entity->setUser($this->get('security.context')->getToken()->getUser());
Then your user is preselected in the form.
If you want to hide it you can use $form->remove('user');
and set the user like mentioned in createAction and updateAction after $form->handleRequest($request);