2016-09-29 66 views
1

我有一个模型绑定错误消息

validates :csv_fingerprint, uniqueness: { message: "CSV was already uploaded." } 

在窗体视图(simple_form)下面的验证规则,下面的代码生成所述文件上传字段:

= f.input :csv, as: :file 

的验证有效,但错误消息未在上传字段中显示。我认为,其原因是,该验证是:csv_fingerprint和表单域是:CSV

如何判断验证规则,该消息应该显示在:csv字段中?

回答

1

您可以使用f.error

= f.input :csv, as: :file 
= f.error :csv_fingerprint 

你也可以检查错误的属性是这样的:

errors_for(@model, :attribute) 

然后,您可以遍历这些并显示出来。

又一种获取对象错误的方法:@model.errors.on(:attribute)

+0

谢谢。所以验证器中没有选项来指定消息属性。你必须去看看。 – Christian

+0

@Christian这是个问题吗?因为我不确定我是否可以回答:) –

+1

@Christian模型的验证器通常在数据库列上操作,大体上来说。显示验证错误的方式的责任落在视图层上。 –