public postCustomerAddressAction ( integer $id, |
||
$id | integer | A Customer identifier |
$request | A Symfony request | |
return | Address |
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;
}