来自样式时间小部件的Symfony

时间:2016-08-22 13:45:58

标签: css twig symfony styling formbuilder

我目前正在尝试设置由symfony表单构建器生成的表单。

它上面有一个引导覆盖,但我想移动时间小部件,使它们彼此相邻。

form view

twig template rows formbuilder

3 个答案:

答案 0 :(得分:1)

您可以使用

单独显示表单的每个输入

form_row(form.yourinputname)

form_row是字段标签,错误和小部件的组合。

您可以看到有关此内容的doc

修改

因此,如果您想在一行中显示一些小部件,您可以执行此操作(您必须使用循环来显示您的表单集的每个输入):

<style type="text/css">
    .myClass{
       .inline{
         display: inline-block;
       }
    }
</style>

<div class='myClass'>
  {% for business in form.businesshours %}
      <div class="inline">{{ form_row(business.day) }}</div>
      <div class="inline">{{ form_row(business.openTime) }}</div>
      <div class="inline">{{ form_row(business.breakStart) }}</div>
      <div class="inline">{{ form_row(business.breakEnd) }}</div>
      <div class="inline">{{ form_row(business.closeTime) }}</div>
  {% endfor %}
</div>

答案 1 :(得分:1)

http://symfony.com/doc/current/form/form_customization.html#how-to-customize-an-individual-field

在本节中,有一个部分可以覆盖单行的显示,如果你尝试类似的东西并给div一个你自己的类,你可能可以用css来设置它。

这似乎是表单样式和自定义的页面。

希望有所帮助

{% form_theme form _self %}
{% block _datetime_row %} 
<div class="your_class"> 
{{ form_label(form) }} 
{{ form_errors(form) }} 
{{ form_widget(form) }} 
</div> 
{% endblock %}

{{ form_row(form.name) }}

答案 2 :(得分:0)

添加HTML以移动每个表单行。 (与@DOZ相同,但使用引导类)。

删除{{ form_row(form.businessHours) }}和:

<div class="row">
    <div class="col-xs-3">
        {{ form_row(form.businessHours.Begin) }}
    </div>    
    <div class="col-xs-3">
        {{ form_row(form.businessHours.BeginPauze) }}
    </div>    
    <div class="col-xs-3">
        {{ form_row(form.businessHours.EindPauze) }}
    </div>    
    <div class="col-xs-3">
        {{ form_row(form.businessHours.Einde) }}
    </div>    
</div>