1

我想显示一个带有引导类的表单(请参阅https://github.com/plataformatec/simple_form#twitter-bootstrap

我安装了带有引导参数的简单表单:

rails generate simple_form:install --bootstrap

以我的形式:

<%= simple_form_for(resource,
                    :as => resource_name,
                    :url => registration_path(resource_name),
                    :html => {:class => 'form-horizontal'}) do |f| %>
    <%= devise_error_messages! %>

    <%= f.label :email %>
    <%= f.email_field :email %>
    ...

生成的 HTML 如下所示:

<label class="email optional control-label" for="user_email">Email</label>
<input id="user_email" name="user[email]" size="30" type="email" value="">

(没有包装标签)。

为什么不应用包装标签?


我尝试了什么:

卸载并重新安装 gem:

bundle update; bundle install; bundle;
rails d simple_form:install
rails generate simple_form:install --bootstrap

我检查了服务器启动时是否调用了 simple_form_bootstrap.rb 配置文件;它是。

我试图强制包装器以形式引导(仍然没有包装器标签):

<%= simple_form_for(resource,
                    :as => resource_name,
                    wrapper: :bootstrap,
                    ...
4

1 回答 1

2

f.label并且f.email_field不要使用包装器。f.input做。

通过更换

<%= f.label :email %>
<%= f.email_field :email %>

<%= f.input :email %>

应用包装。

于 2013-07-14T14:51:54.227 回答