为名为“Button”的实体嵌入表单集合:原型包含错误的表单

时间:2014-06-25 13:45:01

标签: php forms symfony

我正在尝试创建一个包含子表单集合的表单。

inner 表单的实体类型称为Button。对于这个例子,让我们假装它只有一个属性x,这是一个整数。

所以我为内部表单定义了这个ButtonType类:

class ButtonType extends AbstractType
{
    public function buildForm(FormBuilderInterface $builder, array $options)
    {
        $builder->add('x', 'integer');
    }
}

现在我尝试按照How to Embed a Collection of Forms中的说明操作。特别是,它包含以下示例代码:

<ul class="tags" data-prototype="{{ form_widget(form.tags.vars.prototype)|e }}">
    ...
</ul>

在他们的示例中,内部实体称为“标签”,因此我将“标签”替换为“按钮”。

然后我添加了一个JavaScript,它添加了一个新的子表单以响应链接点击。

问题 data-prototype值看起来像这样(为了更好的可读性,我在这里没有使用过):

<button type="button" id="storypunkt_buttons___name__" name="storypunkt[buttons][__name__]">__name__label__</button>

(“Storypunkt”是包含该集合的外部实体的名称。)

这没有任何意义。为什么它会渲染一个按钮,只有一个按钮?它肯定会为x属性呈现整数文本字段。我该如何解决这个问题?

1 个答案:

答案 0 :(得分:1)

为了实验,我将其重命名为其他内容(不更改任何其他内容)并使其正常工作。

所以答案就像愚蠢一样简单:你不能打电话给你的实体Button

相关问题