3

我需要创建一个表单类,我正在关注http://symfony.com/doc/current/book/forms.html中的 symfony 书

我正在尝试在 src/Acme/TaskBundle/Form/Type/TaskType.php 中创建一个表单,但是当我查看项目中的文件夹结构时,没有“Form”文件夹。

我尝试在 src/Acme/TaskBundle/ 中手动创建 Form 文件夹,但在 Form Folder 和 TaskType.php 文件(命名空间 Acme\TaskBundle\Form\Type Expected:Identifier)中出现错误。

有没有办法以自动方式创建 Form 文件夹?或者如何手动创建?

4

3 回答 3

4

Form文件夹只是一个约定——您可以将表单放在任何您想要的地方。该公约延伸至:

  • Form\Type对于表单类型,
  • Form\Model对于表单模型
  • Form\Handler对于表单处理程序,
  • 等等
于 2012-09-10T07:08:03.237 回答
1

您是否尝试过该命令,可能是您正在寻找的

php app/console generate:doctrine:form 
于 2012-09-10T22:28:30.080 回答
0

我只是手动创建的。形式:(我的情况:LL\NameBundle\Form)

表单名称.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()
    );
}

这对我有用,如果它不起作用,请发布一些代码。

于 2012-09-19T06:45:06.893 回答