def upload(): #获取用户ip地址 app.logger.info('start upload') start_time = time.time() # id = str(start_time) + '_' + request.remote_addr id = uuid.uuid4().hex es_model = EsModel(meta={'id': id}, ip=request.remote_addr) es_model.save() session['id'] = id if request.method == 'POST': file = request.files['file'] if file and check_file_extension(file.filename): app.logger.info('file type is allow') producer = Producer('Producer', uploading_queue, uploaded_queue, app) if producer.add_task(file): producer.start() producer.join() else: return jsonify(name=file.filename, status='waited') print(threading.enumerate()) updir = os.path.join(basedir, 'upload/') updir = os.path.join(updir, id) es_model = EsModel.get(id=session.get('id')) es_model.update(models_dir=os.path.join(updir, file.filename)) return jsonify(name=file.filename, status='success')
def upload(): if request.method == 'POST': uploaded_files = request.files.getlist("file") try: isHaveOne = request.form['model_id'] except: isHaveOne = 'aaaaaaaaaa' model = create_model(request, session, isHaveOne) # session['id'] = model.id if not model.check_filetype(): return jsonify(status='failed', message='filetype error') # initial database object es_model = EsModel(meta={'id': model.id}, ip=request.remote_addr) es_model.save() producer = UploadProducer('Producer', uploading_queue, model_pool, app) if producer.add_task(model): producer.start() producer.join() # return jsonify(model.uploaded) return jsonify(name=model.id, status='success', message='uploaded') else: return jsonify(name=model.id, status='failed', message='waiting')
def x2paddle(): if request.method == 'POST': model = create_model(request) # if not model.check_filetype(): return jsonify(status='failed', message='filetype error') # initial database object es_model = EsModel(meta={'id': model.id}, ip=request.remote_addr) es_model.save() session['id'] = model.id producer = Producer('Producer', uploading_queue, converted_pool, app) if producer.add_task(model): producer.start() print('uploading_queue size: ', uploading_queue.qsize()) producer.join() return jsonify(producer.result) else: return jsonify(name=model.id, status='failed', message='waiting')