Ruby 带有引导复选框的简单表单

Ruby 带有引导复选框的简单表单,ruby,twitter-bootstrap,erb,simple-form,Ruby,Twitter Bootstrap,Erb,Simple Form,我正在使用simple_form和Bootstrap,我希望将我的“记住我”复选框内联到标签的左侧,如Twitter Bootstrap文档中所示: 我的表单代码如下所示: <%= simple_form_for(resource, :as => resource_name, :url => session_path(resource_name), :html => { :class => 'well'}) do |f| %> <%= f.inp

我正在使用simple_form和Bootstrap,我希望将我的“记住我”复选框内联到标签的左侧,如Twitter Bootstrap文档中所示:

我的表单代码如下所示:

<%= simple_form_for(resource, :as => resource_name, :url => session_path(resource_name), :html => { :class => 'well'}) do |f| %>
    <%= f.input :email %>
    <%= f.input :password %>
    <%= f.input :remember_me, :as => :boolean if devise_mapping.rememberable?  %>

    <%= f.button :submit, "Sign In" %>

<% end %>
resource\u name,:url=>session\u路径(resource\u name),:html=>{:class=>'well'})do | f |%>
:如果设计映射为布尔值。可记忆?%%>
结果是复选框顶部的“记住我”标签


我搞砸了什么?

这方面有很多选项,请参阅了解更多选项:

最直接的(我认为)方法是在复选框上使用
:label=>false
:inline_label=>true
,以更改标签在HTML中的位置

:boolean,:label=>false,:inline_label=>true(如果设计映射)。可记忆?%%>

这对我来说产生了类似的结果:


@alol的答案对于垂直表单(字段顶部的标签)非常有效,但是如果您使用的是水平表单,并且希望复选框标签显示在复选框的右侧,但仍然保持表单的布局,则可以执行以下操作:

f.input :remember_me, :as => :boolean, :label => "&nbsp;", :inline_label => true if devise_mapping.rememberable?
如果需要,您还可以传递一个特定的标签作为内联标签,而不是
true

f.input :remember_me, :as => :boolean, :label => "&nbsp;", :inline_label => "My Label" if devise_mapping.rememberable?

我觉得这个比较简单:

f.input :remember_me, wrapper: :vertical_boolean, as: :boolean  if devise_mapping.rememberable?
包装器捆绑在
config/initializers/simple\u form\u bootstrap.rb
中,至少在
simple\u form 3.1.0rc2
中安装:

rails g simple_form:install --bootstrap

谢谢正是我需要的。非常感谢!我只是花了两个小时想弄明白:)