Ruby 带有引导复选框的简单表单
我正在使用simple_form和Bootstrap,我希望将我的“记住我”复选框内联到标签的左侧,如Twitter Bootstrap文档中所示: 我的表单代码如下所示: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_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 => " ", :inline_label => true if devise_mapping.rememberable?
如果需要,您还可以传递一个特定的标签作为内联标签,而不是true
:
f.input :remember_me, :as => :boolean, :label => " ", :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
谢谢正是我需要的。非常感谢!我只是花了两个小时想弄明白:)