我正在使用用户模型中的验证创建注册表单,例如
validates_confirmation_of :password, :message = "Passwords do not match"
validates_uniqueness_of :email, :message = "Email in use"
并且注册看起来像这样
def register
@user = User.new(params[:user])
if @user.save
redirect_to(:action => 'login')
else
end
end
我不知道如何在触发任何这些验证后将这些消息返回给用户。
非常感谢任何帮助。
答案 0 :(得分:8)
嗯,你没有明确地这样做如果你的验证失败了,他们的错误信息将被写入你案例中的那个对象的错误对象@user
所以检查
@user.errors.count()
要么
@user.errors
在页面上显示错误消息
你可以迭代错误对象
<% @user.errors.full_messages.each do |message| %>
<%= message %>
<%end%>