我正在使用http://ar.rubyonrails.org/classes/ActiveRecord/Validations/ClassMethods.html#M000086來驗證記錄。活躍記錄驗證:唯一性
我的表單目前是使用RJS的遠程表單。我的問題是,如何通過ajax(並假定create.rjs文件)將:message(對於錯誤)返回給頁面?
最佳, 埃利奧特
我正在使用http://ar.rubyonrails.org/classes/ActiveRecord/Validations/ClassMethods.html#M000086來驗證記錄。活躍記錄驗證:唯一性
我的表單目前是使用RJS的遠程表單。我的問題是,如何通過ajax(並假定create.rjs文件)將:message(對於錯誤)返回給頁面?
最佳, 埃利奧特
Rails的文檔不使它容易找到,但得到的答覆是在這裏:http://api.rubyonrails.org/classes/ActiveRecord/Errors.html
您可以訪問想出通過你的模型對象中的任何錯誤,然後在您的RJS中,您可以格式化並返回消息。 Post模型的示例可能如下所示:
page.visual_effect :highlight, :message
unless @post.errors.empty?
@post.errors.each_error do |attr, err|
page.insert_html :bottom, :message, %(#{attr} #{err.message}<br>)
end
else
page.replace_html :message, "Huzzah! I posted!<br>"
end
其中:message是您用來顯示錯誤的DIV的ID。