Symfony2 MopaBootstrapBundle Bootstrap 2.3.2样式

时间:2014-01-09 14:10:11

标签: php twitter-bootstrap symfony

我目前正在使用Symfony2和MopaBootStrap Bundle但使用Bootstrap2.3.2。

我遇到了symfony表单样式的问题。我想要实现的是一个横向形式,上面有3个东西:

a)输入字段 b)使用子表单的集合 c)子表单

我目前的代码:

// The view file
{{ form_start(form, {'attr': {'class': 'form-horizontal'}}) }}
    <div class="row">
        {{ form_row(form.field) }}
    </div>

    <div class="row">
        {{ form_row(form.collection) }}
    </div>

    <div class="row">
        {{ form_row(form.subform) }}
    </div>
{{ form_end(form) }}

// The form type
$builder->add('field', null, array('label' => 'Enter Name'));

$builder->add('collection', 'collection', array('type' => 'test_project_collection_subform'));

$builder->add('subform', 'test_project_subform', array('label' => 'Enter Donation'));

// I know that everything in the builder lines can be chained and that the arrays are not in the correct coding standards but this is the basics of my form

好的,所以我知道使用bootstrap一切都被划分为12个网格。我不想要一个流畅的网格,普通的网格可以做到这一点。我基本上都希望所有6宽,在中心,所以逻辑上它将意味着span6 offset3。

第一次尝试:

// The view file
{{ form_start(form, {'attr': {'class': 'form-horizontal'}}) }}
    <div class="row">
        {{ form_row(form.field, {'attr': {'class': 'span6 offset3'}}) }}
    </div>

    <div class="row">
        {{ form_row(form.collection, {'attr': {'class': 'span6 offset3'}}) }}
    </div>

    <div class="row">
        {{ form_row(form.subform, {'attr': {'class': 'span6 offset3'}}) }}
    </div>
{{ form_end(form) }}

这会产生第一张图片 - 我添加了

<div class="row">
    <div class="span3 well">3</div>
    <div class="span6 well">6</div>
</div>

显示网格

![1]:http://imgur.com/jDfC0Xo“工具提示”

你可以看到没有任何元素是对齐的,并且它们都没有与span6在同一个位置,并且没有子形式是6长。

我也尝试将元素分成

{{ form_label() }}
{{ form_widget() }}
{{ form_errors() }}

但这也行不通。即使这将字段放在正确的位置和大小,但如果该字段中存在错误,则只有错误消息为红色而不是标签+小部件+错误消息。

我去看了一下,发现你必须使用整个控制组。

我试过

<div class="row">
    <div class="offset3">
        <div id="appbundle_field_control_group" class=" control-group">
            <label class=" control-label required" for="appbundle_field"></label>
            <div class=" controls">
                <textarea id="appbundle_field" class="span6" maxlength="400" required="required" name="appbundle_[field]"></textarea>
            </div>
        </div>
    </div>
</div>

但是当字段中出现错误时我仍然遇到同样的问题。

所以我的问题的第一部分将是如何设置字段的样式以使其跨越6并且当出现错误时,一切都会变为红色,因为默认情况下会这样做?

我的第二部分将是如何设置子表单元素的样式,而不必每次都包含模板?

我的最后一个问题是,在哪里可以找到更多使用bootstrap2.3.2样式化symfony2的例子,它比getbootstrap.com上的示例复杂一点?

0 个答案:

没有答案