File upload 在jquery文件上载中多次上载大文件 我参考了jquery文件上载的示例,并创建了一个 演示应用程序,工作良好,我能够上传文件很好 但我在另一个应用程序中进行了相同的集成,但事实并非如此 工作正常这里的区别只是演示有一个.erb 格式和此应用程序具有.haml格式 在这里,我也可以上传高达100mb的文件,但高于100mb的文件 正在花费时间,并且在服务器日志中显示“无内存” 错误-分配内存失败”。然后它又开始上传 当我在取消后刷新页面时,我看到文件被删除 上传多次。我找不到适当的理由来解释 这个问题,是不是内存不足的问题?如果是,也是同样的问题 在演示应用程序中运行良好,我通过它上传了高达6gb的数据
这是我的密码 application.jsFile upload 在jquery文件上载中多次上载大文件 我参考了jquery文件上载的示例,并创建了一个 演示应用程序,工作良好,我能够上传文件很好 但我在另一个应用程序中进行了相同的集成,但事实并非如此 工作正常这里的区别只是演示有一个.erb 格式和此应用程序具有.haml格式 在这里,我也可以上传高达100mb的文件,但高于100mb的文件 正在花费时间,并且在服务器日志中显示“无内存” 错误-分配内存失败”。然后它又开始上传 当我在取消后刷新页面时,我看到文件被删除 上传多次。我找不到适当的理由来解释 这个问题,是不是内存不足的问题?如果是,也是同样的问题 在演示应用程序中运行良好,我通过它上传了高达6gb的数据,file-upload,ruby-on-rails-4,paperclip,jquery-file-upload,jquery-fileupload-rails,File Upload,Ruby On Rails 4,Paperclip,Jquery File Upload,Jquery Fileupload Rails,这是我的密码 application.js $(document).ready(function(){ var fileUploadErrors = { maxFileSize: 'File is too big', minFileSize: 'File is too small', acceptFileTypes: 'Filetype not allowed', maxNumberOfFiles: 'Max number of files exceeded', upload
$(document).ready(function(){
var fileUploadErrors = {
maxFileSize: 'File is too big',
minFileSize: 'File is too small',
acceptFileTypes: 'Filetype not allowed',
maxNumberOfFiles: 'Max number of files exceeded',
uploadedBytes: 'Uploaded bytes exceed file size',
emptyResult: 'Empty file upload result'
};
$('#fileupload').fileupload({
autoUpload : true,
maxRetries : 100,
retryTimeout : 500,
fail : function(e, data) {
var fu = $(this).data('blueimp-fileupload') || $(this).data('fileupload'), retries = data.context.data('retries') || 0, retry = function() {
$.getJSON('#fileupload', {
file : data.files[0].name
}).done(function(result) {
var file = result.file;
data.uploadedBytes = file && file.size;
data.data = null;
data.submit();
}).fail(function() {
fu._trigger('fail', e, data);
});
};
if (data.errorThrown !== 'abort' && data.uploadedBytes < data.files[0].size && retries < fu.options.maxRetries) {
retries += 1;
data.context.data('retries', retries);
window.setTimeout(retry, retries * fu.options.retryTimeout);
return;
}
data.context.removeData('retries');
$.blueimp.fileupload.prototype.options.fail.call(this, e, data);
}
});
$.getJSON($('#fileupload').prop('action'), function (files) {
var fu = $('#fileupload').data('blueimpFileupload'),
template;
fu._adjustMaxNumberOfFiles(-files.length);
console.log(files);
template = fu._renderDownload(files)
.appendTo($('#fileupload .files'));
fu._reflow = fu._transition && template.length &&
template[0].offsetWidth;
template.addClass('in');
$('#loading').remove();
});
型号
class Asset < ActiveRecord::Base
has_attached_file :upload
do_not_validate_attachment_file_type :upload
include Rails.application.routes.url_helpers
def to_jq_asset
{
"id" => read_attribute(:id),
"name" => read_attribute(:upload_file_name),
"size" => read_attribute(:upload_file_size),
"content_type" => read_attribute(:upload_content_type),
"url" => upload.url(:original),
"delete_url" => asset_path(self),
"delete_type" => "DELETE"
}
end
end
class资产读取属性(:id),
“name”=>read_属性(:upload_file_name),
“大小”=>读取属性(:上载文件大小),
“内容类型”=>读取属性(:上传内容类型),
“url”=>upload.url(:original),
“删除url”=>资产路径(自身),
“删除类型”=>“删除”
}
结束
结束
- index.html.haml 我试图在这里添加索引文件,但编辑器不接受它。所以你可以参考这个
- 我修复了这个问题,我比较了我的演示应用程序和这个应用程序的gem文件 应用程序,并发现rails的版本是4.0.2和演示版 应用程序是4.1.0。所以更新了这个宝石,瞧,一切都正常 太好了
- 还有一件事,在升级到4.1.0之后,我出现了一个错误 “nil:NilClass的未定义方法`环境'”这是由于 sass导轨。我也必须更新,我也需要更新 将链轮设置为1.11.0版,原因是在捆绑安装后 更新至1.12.0
- 希望这对别人有帮助
class Asset < ActiveRecord::Base
has_attached_file :upload
do_not_validate_attachment_file_type :upload
include Rails.application.routes.url_helpers
def to_jq_asset
{
"id" => read_attribute(:id),
"name" => read_attribute(:upload_file_name),
"size" => read_attribute(:upload_file_size),
"content_type" => read_attribute(:upload_content_type),
"url" => upload.url(:original),
"delete_url" => asset_path(self),
"delete_type" => "DELETE"
}
end
end