我有这个表格
:title
我的示例中的标题字段是必需的。因此,如果我尝试在can't be blank
中提交没有任何值的表单,则验证将失败并返回错误消息,如预期的那样。但是我默认获得的错误就是这个simple_form
,所以我想知道是否有办法显示验证错误的完整信息(比如不使用The title field can't be blank
gem时),如{{1}等等
有没有办法显示完整的消息?
答案 0 :(得分:1)
不是很干净,但有效:)
<%= simple_form_for :post do |f| %>
<%= f.error_notification %>
<%= f.input :title, error: f.object.errors.full_messages_for(:title).to_sentence %>
<%= f.input :body, error: f.object.errors.full_messages_for(:body).to_sentence %>
<%= f.button :submit %>
<% end %>
答案 1 :(得分:1)
尝试使用full_error方法,如下所示:
<%= f.input :title, error: f.full_error(:title) %>
答案 2 :(得分:0)
经过检查,我发现您可以全局配置:
<强>配置/初始化/ simple_form.rb 强>
SimpleForm.setup do |config|
config.wrappers :default, class: :input,
hint_class: :field_with_hint, error_class: :field_with_errors do |b|
# ...
# ...
# COMMENT THIS LINE JUST LIKE THIS:
# b.use :error, wrap_with: { tag: :span, class: :error }
# THEN UNCOMMENT THIS LINE JUST LIKE THIS:
b.use :full_error, wrap_with: { tag: :span, class: :error }
end
end
经过测试的工作。