mirror of
https://github.com/Sylius/Sylius.git
synced 2026-07-14 09:02:12 +00:00
Simplify the resource controller by joining the create/update methods
This commit is contained in:
parent
98e7a5b6a3
commit
fb0cb28363
2 changed files with 8 additions and 52 deletions
|
|
@ -73,24 +73,6 @@ abstract class ResourceController extends Controller implements ResourceControll
|
|||
return $this->handleView($view);
|
||||
}
|
||||
|
||||
/**
|
||||
* Display form for creating new resource.
|
||||
*
|
||||
* @param Request $request
|
||||
*
|
||||
* @return Response
|
||||
*/
|
||||
public function newAction(Request $request)
|
||||
{
|
||||
$resource = $this->createResource();
|
||||
$form = $this->createResourceForm($resource);
|
||||
|
||||
return $this->renderResponse('create', array(
|
||||
$this->getResourceName() => $resource,
|
||||
'form' => $form->createView()
|
||||
));
|
||||
}
|
||||
|
||||
/**
|
||||
* Create resource.
|
||||
*
|
||||
|
|
@ -98,14 +80,12 @@ abstract class ResourceController extends Controller implements ResourceControll
|
|||
*
|
||||
* @return Response
|
||||
*/
|
||||
public function postAction(Request $request)
|
||||
public function createAction(Request $request)
|
||||
{
|
||||
$resource = $this->createResource();
|
||||
$form = $this->createResourceForm($resource);
|
||||
|
||||
$form->bind($request);
|
||||
|
||||
if ($form->isValid()) {
|
||||
if ($request->isMethod('POST') && $form->bind()->isValid()) {
|
||||
$this->getManipulator()->create($resource);
|
||||
$this->setFlash('success', sprintf("%s has been created", ucfirst($this->getResourceName())));
|
||||
|
||||
|
|
@ -125,24 +105,6 @@ abstract class ResourceController extends Controller implements ResourceControll
|
|||
return $this->handleView($view);
|
||||
}
|
||||
|
||||
/**
|
||||
* Display form for editing resource.
|
||||
*
|
||||
* @param Request $request
|
||||
*
|
||||
* @return Response
|
||||
*/
|
||||
public function editAction(Request $request)
|
||||
{
|
||||
$resource = $this->findResourceOr404($request->get('id'));
|
||||
$form = $this->createResourceForm($resource);
|
||||
|
||||
return $this->renderResponse('update', array(
|
||||
$this->getResourceName() => $resource,
|
||||
'form' => $form->createView()
|
||||
));
|
||||
}
|
||||
|
||||
/**
|
||||
* Update resource.
|
||||
*
|
||||
|
|
@ -150,14 +112,12 @@ abstract class ResourceController extends Controller implements ResourceControll
|
|||
*
|
||||
* @return Response
|
||||
*/
|
||||
public function putAction(Request $request)
|
||||
public function updateAction(Request $request)
|
||||
{
|
||||
$resource = $this->findResourceOr404($request->get('id'));
|
||||
$form = $this->createResourceForm($resource);
|
||||
|
||||
$form->bind($request);
|
||||
|
||||
if ($form->isValid()) {
|
||||
if ($request->isMethod('POST') && $form->bind($request)->isValid()) {
|
||||
$this->getManager()->persist($resource);
|
||||
$this->setFlash('success', sprintf("%s has been updated", ucfirst($this->getResourceName())));
|
||||
|
||||
|
|
@ -222,9 +182,7 @@ abstract class ResourceController extends Controller implements ResourceControll
|
|||
*/
|
||||
protected function createResourceForm(ResourceInterface $resource = null)
|
||||
{
|
||||
return $this->createNamedForm('', $this->getResourceFormType(), $resource, array(
|
||||
'csrf_protection' => false
|
||||
));
|
||||
return $this->createForm($this->getResourceFormType(), $resource);
|
||||
}
|
||||
|
||||
/**
|
||||
|
|
@ -308,7 +266,7 @@ abstract class ResourceController extends Controller implements ResourceControll
|
|||
|
||||
protected function getIdentifierValue()
|
||||
{
|
||||
if (!$identifier = $this->getRequest()->attributes->get($this->getIdentifierName())) {
|
||||
if (!$identifier = $this->getRequest()->get($this->getIdentifierName())) {
|
||||
throw new NotFoundHttpException('No resource identifier supplied');
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -22,9 +22,7 @@ interface ResourceControllerInterface
|
|||
{
|
||||
function getAction(Request $request);
|
||||
function getCollectionAction(Request $request);
|
||||
function newAction(Request $request);
|
||||
function postAction(Request $request);
|
||||
function editAction(Request $request);
|
||||
function putAction(Request $request);
|
||||
function createAction(Request $request);
|
||||
function updateAction(Request $request);
|
||||
function deleteAction(Request $request);
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue