不带包装的field_with_errors与f.text_field创建的字段的CSS格但工程f.

2019-09-18 11:02发布

我有我的看法的问题。 我使用zurb基础,样式表,当我在表格中输入错误的输入我得到的形式误差以上,但含有错误的领域不与红色包裹。 进一步展望这个没有field_with_errors格的输入字段包装。 进一步寻找到这之后我发现,如果我用f.input代替f.text_field我得到正确的错误包装。

至于zurb有text_field,text_area等款式我使用的,但我没有得到来自轨道误差股利。 有没有什么很好的解决了这一点?

在这里,我得到正确的Zurb基础造型,但没有field_with_errors格:

.field
  = f.label :name
  = f.text_field :name, :class => "input-text"

在这里,我没有得到Zurb造型,但元件包裹着field_with_errors格:

.field
  = f.label :name
  = f.input :name, :class => "input-text"

所以basicly似乎f.text_field帮手莫名其妙地绕过Rails视图提供DIV类来说明错误的机制。

Answer 1:

如果你想通过class来SimpleForm的输入你应该使用

= f.input :name, :input_html => { :class => 'input-text' }


Answer 2:

f.text_field是Rails形式帮手,不simple_form的帮手(既然你标记这个简单的形式,我假设你正在使用)。 因为简单的表格只是包装自己的属性有错误的,它无视轨道形成的辅助属性。

你可能需要的是

= f.input :name, :as => :string

你也不需要simple_form自己的标签要么,所以我们可以凝聚f.labelf.text_field成为:

= f.input :name, :as => :string, :label => "Custom label"

如果你离开关:标签属性,它会默认为符号的名称,在这种情况下,您的标签将是“名”。 随着:标签属性为您提供了名为“自定义标签”的标签。

希望帮助。



文章来源: Not wrapping css div with field_with_errors for fields created with f.text_field but works for f.input