in rails 3我不想在错误消息中显示字段名称。任何人都知道如何做到这一点?从验证错误消息中删除字段名称
validates_presence_of :title, :message => "no title"
它显示
Title no title
我想
no title
in rails 3我不想在错误消息中显示字段名称。任何人都知道如何做到这一点?从验证错误消息中删除字段名称
validates_presence_of :title, :message => "no title"
它显示
Title no title
我想
no title
在表单视图改变当前代码
<%@object.errors.full_messages.each do |msg| %>
<li><%= msg %></li>
<% end %>
有了这个
<%@object.errors.messages.values.each do |msg| %>
<%msg.each do |m| %>
<li><%= m %></li>
<%end %>
<% end %>
module ActiveModel
class Errors
def full_messages
map { |attribute, message|
message
}
end
end
end
这个工作对我们(轨道4):
%ul
- @some_object.errors.messages.each do |message|
%li= message[1][0]
使用Rails 4.0.2,这将删除错误消息文本并仅保留项目符号。 – Deborah 2013-12-08 04:01:03
这在Rails中4(HAML)为我工作如果更改元素的标签,则会影响错误消息标签。所以,如果你将其更改为空字符串,它将使只是消息:
-# reviews/_form.html.haml
= form_for review do |form|
= form.label :rating, (review.errors[:rating] ? "" : "Rate this Item")
:
<% resource.errors.each do |attr,msg| %>
<li><%= msg %></li>
<% end %>
您可以使用下面的宝石
https://github.com/jeremydurham/custom-err-msg
您可以在开始使用“^”字符消息值。它只会显示此后的字符。
validates_presence_of :title, :message => "^no title"
您可以使用下面的宝石也
那不是重复。 – hlcs 2016-09-02 08:31:57
你有答案吗? – 2017-01-05 09:56:09