public function postCustomerAddressAction($id, Request $request) { $customer = $id ? $this->getCustomer($id) : null; $form = $this->formFactory->createNamed(null, 'sonata_customer_api_form_address', null, array('csrf_protection' => false)); $form->bind($request); if ($form->isValid()) { $address = $form->getData(); $address->setCustomer($customer); $this->addressManager->save($address); $view = \FOS\RestBundle\View\View::create($address); $serializationContext = SerializationContext::create(); $serializationContext->setGroups(array('sonata_api_read')); $serializationContext->enableMaxDepthChecks(); $view->setSerializationContext($serializationContext); return $view; } return $form; }