我有一个模型Camping
which has_many
Images
。露营至少需要一张图片:
class Camping < ActiveRecord::Base
attr_accessible :images_attributes
has_many :images
validates_presence_of :images, :message => "At least one image is required"
accepts_nested_attributes_for :images, :allow_destroy => true
end
然后,在活动管理员 http://activeadmin.info/docs/5-forms.html,它使用形式化的 http://github.com/justinfrench/formtastic,我呈现错误消息至少需要一张图片, with f.semantic_errors
:
ActiveAdmin.register Camping do
form :html => { :multipart => true } do |f|
f.semantic_errors :images
#....
f.inputs "Images" do
f.has_many :images do |img|
#....
end
end
#....
end
end
这呈现为:
图片 至少需要一张图片.
我怎样才能让它渲染:至少需要一张图片?
改变f.semantic_errors :images
into 'f.semantic_errors
(删除:图像)使其不渲染任何内容;完全没有错误。
注:API文档 http://rdoc.info/github/justinfrench/formtastic/Formtastic/Helpers/ErrorsHelper:semantic_errors似乎暗示 Formtastic 总是添加:attribute
错误的名称;但我不完全确定这段代码是如何工作的。
如果您想使用此类自定义消息,您可以添加与整个对象状态相关的错误消息,而不是与特定属性相关
改变这个
validates_presence_of :images, :message => "At least one image is required"
类似的东西
validate :should_have_images
def should_have_images
errors.add(:base, "At least one image is required") if images.blank?
end
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)