在 Rails 3.2.13 应用程序中使用 simple_form v2.1.0。我有一个 simple_form,我希望在其中显示一个带有内联标签的复选框,并且我希望有一个“空”的普通标签。这样,标签的容器应该保持在原位,并且复选框将与其他表单元素正确定位。
如果我设置 :label => ""
或 :label => " "
或 :label => nil
或不提供 :label
最终,我以字段名称作为标签。
如果我设置 :label => false
,标签和包含的元素根本不会呈现(因此复选框出现在页面的最左侧)。
如果我设置 :label => " "
, 我最终得到文字
,正如预期的那样。
似乎没有办法告诉简单的表单将标签留在那里,只是不要在其容器中放置任何文本。
这是一个示例表单,我正在尝试为带有内联标签的复选框设置一个空标签。
<%= simple_form_for @model ... %>
<%= f.input :sticky, :label => "", :inline_label => "Sticky?", :as => :boolean ... %>
<% end %>
但是 simple_form 认为它比我聪明,并且默认了标签。如果我没有专门提供标签,我希望它只这样做!
最佳答案
尝试设置:label
值为 false
.
更新:由于 SimpleForm 应该依赖 ActionView 来呈现元素,因此您可以使用这个 hackish 解决方案:将您的语言环境文件中的标签设置为空字符串,如下所示
en:
activerecord:
attributes:
model_name_underscored:
sticky: ' '
关于ruby-on-rails - 让 simple_form 尊重我的空白/空标签,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21719404/