Advertisement
sanjiisan

Untitled

May 22nd, 2017
62
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.77 KB | None | 0 0
  1. <?php
  2.  
  3. namespace AppBundle\Controller;
  4.  
  5. use AppBundle\Entity\Test;
  6. use Sensio\Bundle\FrameworkExtraBundle\Configuration\Route;
  7. use Symfony\Bundle\FrameworkBundle\Controller\Controller;
  8. use Symfony\Component\Form\Extension\Core\Type\SubmitType;
  9. use Symfony\Component\HttpFoundation\Request;
  10.  
  11. class DefaultController extends Controller
  12. {
  13. /**
  14. * @Route("/test/", name="test")
  15. */
  16. public function testAction(Request $request)
  17. {
  18. $test = new Test();
  19. $test->setPrice(45);
  20. $test->setName('Nowa książka o PHP');
  21.  
  22. $validator = $this->get('validator');
  23.  
  24. $errors = $validator->validate($test);
  25. if (count($errors) > 0) {
  26. return $this->render('default/errors.html.twig', ['errors' => $errors]);
  27. }
  28.  
  29. $em = $this->getDoctrine()->getEntityManager();
  30. $em->persist($test);
  31. $em->flush($test);
  32.  
  33.  
  34. return $this->render('default/test.html.twig');
  35. }
  36.  
  37. /**
  38. * @Route("/test-form/", name="test_form")
  39. */
  40. public function testFormAction(Request $request)
  41. {
  42. $test = new Test();
  43.  
  44. $form = $this->createFormBuilder($test)
  45. ->add('name')
  46. ->add('price')
  47. ->add('save', SubmitType::class, array('label' => 'Create Post'))
  48. ->getForm();
  49.  
  50. $form->handleRequest($request);
  51.  
  52. if ($form->isValid()) {
  53. $test = $form->getData();
  54.  
  55.  
  56. $em = $this->getDoctrine()->getEntityManager();
  57. $em->persist($test);
  58. $em->flush($test);
  59.  
  60. return $this->render('default/formOk.html.twig', ['form' => $form->createView()]);
  61. }
  62.  
  63. return $this->render('default/form.html.twig', ['form' => $form->createView()]);
  64. }
  65. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement