def upload_file(request): form = UploadFileForm() if request.method == 'POST': form = UploadFileForm(request.POST, request.FILES) if form.is_valid(): uploaded_data = form.save(commit=False) uploaded_data.file_byte = form.cleaned_data['csv_file'].file.read() uploaded_data.save() return redirect('/') else: return render(request, 'upload.html', {'form': form}) return render(request, 'upload.html', {'form': form})
def index(request): """ use: return index upload view params: request: the request from client return: HttpResponse: the result for upload file (json) """ error_lang = globalconf.DEFAULT_ERROR_LANG result_code = '' if request.method == 'POST': form = UploadFileForm(request.POST, request.FILES) if form.is_valid(): model = form.save(commit=False) path = form.cleaned_data['path'] params = form.cleaned_data['params'] error_lang = get_error_lang(form) result_code, model= upload_check_params(model, path, request) # '1000': 'normal' if result_code == '1000': dev_info, file_info = get_dev_file_info(model) upload_plugins_run(dev_info, file_info, params) model.save() logger.info('upload file success') logger.info('filename:%s client_ip:%s path:%s'%\ (model.filename, model.clientip, model.file.path)) else: # '1008': 'upload form insufficient parameters' result_code = '1008' else: # '1006': 'request method error, must be POST' result_code = '1006' return HttpResponse(json.dumps(get_error_info(error_lang, result_code)))