我正在寻找一种方法,以防止symfony嵌入的表单显示与填充相比,其他表单元素。
我正在使用symfony嵌入式表单功能来构建表单。
我有:
$builder
->add('subProduct', new ProductType())
->add('calories')
;它工作得很好,使用bootstrap 3水平表单布局,我将产品显示为子表单和额外的卡路里。
问题在于,在视图中,ProductType元素出现在subproduct字段中,而不是作为它们自己的元素,因此在它们的左侧有一个class=“class=-sm-2”。
对于一个子窗体,它仍然可以,尽管没有用,但是有多个嵌入子窗体,我有和我有多少子窗体一样多的"col-sm-2“。第三子表单将被限制在屏幕的一小部分中,因为之前显示了三个class=“o sm-2”无用的标签。
有没有人看到一种方法来改变表单的显示方式,以便以一种一致的方式删除子表单的标签?通过覆盖twig bootstrap模板还是从FormType中?
更准确地说,是视图树。我想去掉第二、第三和第四行。
<div id="appbundle_foodanalytics_ingredient">
<div class="form-group">
<label class="col-sm-2 control-label required">Sub product</label>
<div class="col-sm-10">
<div class="form-group">
<label class="col-sm-2 control-label">Nom raccourci</label>
<div class="col-sm-10">
<input type="text">
</div>
</div>
</div>
</div>
<div class="form-group">
<label class="col-sm-2 control-label">Calories</label>
<div class="col-sm-10">
<input type="number">
</div>
</div>
</div>发布于 2016-07-06 14:21:26
我通常呈现字段manually.Its不是最好的解决方案,但它比编辑表单的主题更容易
{{ form_start(form) }}
{{ form_errors(form) }}
{{ form_row(form.subProduct.some_field_name) }}
{{ form_row(form.calories) }}
{{ form_row(form.submit, { 'label': 'Submit me' }) }}
{{ form_end(form) }}https://stackoverflow.com/questions/26864399
复制相似问题