Found 100 rows of data
Interesting 1/100.
Interesting 2/100.
...
Interesting 100/100.
Done.
import pandas as pd
def myView(self, request):
"""Handle POST requests, save all data provided in excel file."""
excel_file = request.FILES.get('excel_one')
excel_df = pd.read_excel(excel_file)
data_format = ['Option_1', 'Option_2', 'Option_3', 'Option_4',]
try:
formatted_df = excel_df[data_format]
except KeyError as error:
return JsonResponse({'success': False, 'message': str(error), })
# forloop to create model objects
for i, v in formatted_df.iterrows():
# do a lot of data validating and stuff first
MyModels.objects.create(arguments)
print(f'Created object {i+1}/{len(formatted_df)}!' # Want to to be sent to html page in real time
return JsonResponse({'success': True, })
我提出了如下ajax请求:
$.ajax({ // variables url, data, etc. contain the expected stuff
async: false,
url: url,
method: "POST",
data: data,
success: function(d){
if(data.success){
console.log(d);
}
else{
$('.log').append('<p><b>Error:</b> '+ d.message +'</p>')
}
},
cache: false,
contentType: false,
processData: false
});