我正在使用Ruby on Rails,并想知道如何获取数组并在多行上打印它。
我现在使用的代码是“application_helper.rb”:
flash.now[:error] = resource.errors.full_messages.join(", ")
我正在尝试显示我的devise errors like shown in this link.现在它打印出来:
电子邮件不能为空,密码不能为空,用户名不能为空
我想这样显示:
电子邮件不能为空白密码不能为空白用户名不能为空白
我可以对“application_helper.rb”文件中的行做什么?
答案 0 :(得分:3)
试试这个
resource.errors.full_messages.join("<br/>").html_safe
答案 1 :(得分:1)
您可以在应用程序助手中编写方法,如下所示。
def print_formatted_errors(errors)
content_tag :div, class: 'errors' do
errors.each do |error|
concat(content_tag :p, error)
end
end
end
你也可以为错误写一些css。
.errors > p { color: red; }
您需要从视图中调用此方法,如下所示
<%= print_formatted_errors(resource.errors.full_messages) %>