0

我试图用一条$.parseJSON(xhr.responseText).errors警告消息来捕获验证消息,但我如何“未定义”,但我不明白为什么。

这是我的验证:

validates :upload_file_name,  :presence   => true,
                                :format     =>{:with => %r{\.(jpg)$}i,:message =>"It should be a pdf File"}

  validates_uniqueness_of :upload_file_name, :message => "blabla"

  validates :upload_file_size,  :inclusion  => {:in =>1.megabytes..20.megabytes,:message=>"bla"}

json:

format.json{ render json: {error: @upload.errors.full_messages}, :status =>422}

和javascript:

 $('#fileupload').fileupload({       


        error: function(xhr){
          var errors = $.parseJSON(xhr.responseText).errors
          alert(errors)         
        }
              });
4

1 回答 1

1

您的控制器中输入错误,将其更改为以下内容即可

format.json{ render json: {errors: @upload.errors.full_messages}, :status =>422}
于 2012-10-29T20:32:58.957 回答