错误消息,继续显示InValid

时间:2010-11-02 21:15:40

标签: ruby-on-rails ruby-on-rails-3

在模型的Rails CREATE控制器中,如果记录的名称已经存在,则通过JS我输出以下响应:

<%=@space.errors%>

哪个输出:

  

permissionsis invalidname此项目名称已在使用中

在模型中我有:

validates_uniqueness_of :name :message => 'This project name is already in use'

我如何摆脱噪音:“权利无效名”对于我的生活我在文档中找不到它?如果我遗漏了一些非常明显的东西,请道歉。

1 个答案:

答案 0 :(得分:1)

问题是您实际上正在返回包含所有错误对象的数组。

你真正想要的是:

<ul>
<% @space.errors.full_messages.each do |msg| %>
  <li><%=h msg %></li>
<% end %>
</ul>

这将为您提供错误列表。

我也非常确定有一种更好的方法可以做到这一点(即内置于rails中的某种帮助程序),但我无法在rails 3的文档中找到它。