Мне нужно создать класс формы, я следую книге symfony в http://symfony.com/doc/current/book/forms.html
Я пытаюсь создать форму в src / Acme / TaskBundle / Form / Type / TaskType.php, но когда я смотрю на структуру папок в моем проекте, нет папки «Form».
Я пытаюсь создать папку формы вручную, в src / Acme / TaskBundle /, я получаю сообщение об ошибке в папке формы и в файлах TaskType.php (пространство имен Acme \ TaskBundle \ Form \ Type Expected: Identifier).
Есть ли способ создать папку формы автоматически? Или как я могу создать вручную?
Папка « Form
» – это просто соглашение – вы можете размещать свои формы там, где хотите. Соглашение распространяется на:
Form\Type
для типов форм, Form\Model
для моделей форм , Form\Handler
для обработчиков форм, Вы пробовали команду, возможно, то, что вы ищете
php app/console generate:doctrine:form
Я просто создал его вручную. form: (мой случай: LL \ NameBundle \ Form)
FormName.php
<?php namespace LL\NameBundle\Form; use Symfony\Component\Form\AbstractType; use Symfony\Component\Form\FormBuilder; class FormName extends AbstractType { public function buildForm(FormBuilder $builder, array $options) { $builder ->add('add') ->add('your') ->add('fields') ; } public function getName() { return 'form-name'; } }
контроллер:
use LL\NameBundle\Form\FormName; public function() { $form = new FormName(); $form = $this->form( $form, $entity ); return array( 'form' => $form->createView() ); }
Это работает для меня, если он не работает, напишите какой-нибудь код.