diff --git a/src/Acme/DemoBundle/Controller/TestController.php b/src/Acme/DemoBundle/Controller/TestController.php new file mode 100644 index 0000000000..e980bb61b6 --- /dev/null +++ b/src/Acme/DemoBundle/Controller/TestController.php @@ -0,0 +1,28 @@ +createForm(new TaskType(), new Task() + , array('validation_groups' => array('validationgroup'),) + ); + $form->add('save', 'submit'); + + $form->handleRequest($this->getRequest()); + + if($form->isValid()){ + echo '

the form is valid...

'; + } + + return $this->render('AcmeDemoBundle:Test:taskform.html.twig', array( + 'form' => $form->createView() + )); + } +} diff --git a/src/Acme/DemoBundle/Entity/Category.php b/src/Acme/DemoBundle/Entity/Category.php new file mode 100644 index 0000000000..19469c55fb --- /dev/null +++ b/src/Acme/DemoBundle/Entity/Category.php @@ -0,0 +1,13 @@ +category; + } + + public function setCategory(Category $category = null) + { + $this->category = $category; + } +} \ No newline at end of file diff --git a/src/Acme/DemoBundle/Form/CategoryType.php b/src/Acme/DemoBundle/Form/CategoryType.php new file mode 100644 index 0000000000..cf30f3f716 --- /dev/null +++ b/src/Acme/DemoBundle/Form/CategoryType.php @@ -0,0 +1,28 @@ +add('name'); + } + + public function setDefaultOptions(OptionsResolverInterface $resolver) + { + $resolver->setDefaults(array( + 'data_class' => 'Acme\DemoBundle\Entity\Category', + 'validation_groups' => array('validationgroup') + )); + } + + public function getName() + { + return 'category'; + } +} \ No newline at end of file diff --git a/src/Acme/DemoBundle/Form/TaskType.php b/src/Acme/DemoBundle/Form/TaskType.php new file mode 100644 index 0000000000..a8facc198c --- /dev/null +++ b/src/Acme/DemoBundle/Form/TaskType.php @@ -0,0 +1,29 @@ +add('category', new CategoryType()); + } + + public function setDefaultOptions(OptionsResolverInterface $resolver) + { + $resolver->setDefaults(array( + 'data_class' => 'Acme\DemoBundle\Entity\Task' + )); + } + + public function getName() + { + return 'task'; + } +} \ No newline at end of file diff --git a/src/Acme/DemoBundle/Resources/config/routing.yml b/src/Acme/DemoBundle/Resources/config/routing.yml index 3402ca17cf..0476589e70 100644 --- a/src/Acme/DemoBundle/Resources/config/routing.yml +++ b/src/Acme/DemoBundle/Resources/config/routing.yml @@ -1,12 +1,3 @@ -_welcome: - pattern: / - defaults: { _controller: AcmeDemoBundle:Welcome:index } - -_demo_secured: - resource: "@AcmeDemoBundle/Controller/SecuredController.php" - type: annotation - -_demo: - resource: "@AcmeDemoBundle/Controller/DemoController.php" - type: annotation - prefix: /demo \ No newline at end of file +_test: + pattern: /test + defaults: { _controller: AcmeDemoBundle:Test:index } \ No newline at end of file diff --git a/src/Acme/DemoBundle/Resources/views/Test/taskform.html.twig b/src/Acme/DemoBundle/Resources/views/Test/taskform.html.twig new file mode 100644 index 0000000000..e7c4220a6e --- /dev/null +++ b/src/Acme/DemoBundle/Resources/views/Test/taskform.html.twig @@ -0,0 +1,3 @@ +

Add task

+

Category name: @Assert\Length(min=3, groups={"validationgroup"})

+{{ form(form) }} \ No newline at end of file