ファイル(ファイル名、サイズ)をアップロードすることで発生する可能性のあるエラーを表示しようとしています。RubyonRails用のJqueryFielUploadの広告適応バージョンを使用しています 。このコードカットオフを変更しようとしましたが、できませんでした。
else
format.html { render action: "new" }
format.json { render json: @upload.errors, status: :unprocessable_entity }
end
私は次の検証を行っており、エラーが発生したときにjsonに書き込みを求めているので、次のようになります。
else
format.html { render action: "new" }
format.json { render json: @upload.errors, status: :unprocessable_entity, error:"Error!" }
end
(それは機能します)そして私は検証で書かれたエラーの仕様が必要です:message
私の検証:
validates :upload_file_name, :presence => true,
:format =>{:with => %r{\.(cel)$}i}
validates_uniqueness_of :upload_file_name, :message => "File with this name is already in the database"
validates :upload_file_size, :inclusion => {:in =>10.megabytes..20.megabytes}, :message =>"Too big or too small"
def to_jq_upload
{
"name" => read_attribute(:upload_file_name),
"size" => read_attribute(:upload_file_size),
"url" => upload.url(:original),
"delete_url" => upload_path(self),
"delete_type" => "DELETE"
}
end
end
そして私が持っている唯一のJavaScript:
<script type="text/javascript" charset="utf-8">
$(function () {
// Initialize the jQuery File Upload widget:
$('#fileupload').fileupload();
//
// Load existing files:
$.getJSON($('#fileupload').prop('action'), function (files) {
var fu = $('#fileupload').data('fileupload'),
template;
fu._adjustMaxNumberOfFiles(-files.length);
console.log(files);
template = fu._renderDownload(files)
.appendTo($('#fileupload .files'));
// Force reflow:
fu._reflow = fu._transition && template.length &&
template[0].offsetWidth;
template.addClass('in');
$('#loading').remove();
});
});
</script