我在Rails中有一个很长的表单Active Admin。
我想自定义基本错误消息,也就是说页面顶部显示的错误(不是每个字段上的错误),这样用户就可以在文本中有一个“短链接”,而不仅仅是默认的错误(见下面的示例)也就是说,链接到有错误的字段,这样他就可以单击并在页面上传输到有错误的字段。
当前错误消息:
我想要的错误消息
例如,上图中的文本可以变成:
Images at least one image is required. <a href="#link_to_anchor_of_field_with_error">Please check it</a>.
注意,在我的露营表单页面中,我可以编辑露营属性,但是
也
房间(它们属于/与露营模式有很多关系=>一个露营有很多房间)
因此,这应该适用于露营的两个属性,也适用于相关房间的属性,如果它们在提交表单时出现错误
ActiveAdmin.register Camping do
form do |f|
f.semantic_errors *f.object.errors.keys
f.inputs "Information for the Camping" do
f.input :name,
f.input :city
end
f.inputs "Rooms" do
f.has_many :rooms,
allow_destroy: true,
heading: false,
new_record: true,
sortable_start: 0 do |room|
room.input :name,
room.input :room_nb,
room.input :facilities
end
end
end
我甚至不确定是否应该在active admin的配置上完成,或者在formtastic的配置中完成更多,这是dsl active admin正在使用的表单。也许这篇文章中的定制(
Make semantic_errors render the exact error-message
)可以使用,但远远超出我的水平:)