为什么设计使用有时flash [:alert],有时候是resource.errors.error_messages

时间:2014-12-04 16:04:37

标签: ruby-on-rails devise

要输出错误消息,设计使用flash [:alert]和resource.errors.error_messages。

为什么只使用flash [:alert]不够用? 单独使用它们有什么好处?

“无效的电子邮件或密码”等错误消息。在flash [:alert]中没有在resource.errors.error_messages中。但我相信这与资源对象有关。

我总是喜欢这样 flash[:alert] = flash[:alert].to_a.concat resource.errors.full_messages

1 个答案:

答案 0 :(得分:0)

在rails中,Flash通常用于显示一些消息,通常用于描述情况。 另一方面,resource.errors包含特定字段的错误。

例如,flash可能包含:“无效的电子邮件或密码” 并且电子邮件字段将出现以下错误:“此类电子邮件已存在”。

设计是一种遵循这种惯例的宝石。