Django에서 excel 파일을 로컬에서 업로드하고 데이터베이스에 저장

1713 단어
Django에서 excel 파일을 로컬에서 업로드하고 데이터베이스에 저장
1. 전면 인터페이스
{% csrf_token %}

views
def uploadGrade(request):
    '''
          
    :param request:
    :return:
    '''
    if request.method == 'POST':
        f = request.FILES.get('file')
        excel_type = f.name.split('.')[1]
        if excel_type in ['xlsx','xls']:
            #        excel  
            wb = xlrd.open_workbook(filename=None,file_contents=f.read())
            table = wb.sheets()[0]
            rows = table.nrows  #    
            try:
                with transaction.atomic():  #          
                    for i in range(1,rows):
                        rowVlaues = table.row_values(i)
                        major = models.TMajor.objects.filter(majorid=rowVlaues[1]).first()
                        models.TGrade.objects.create(gradeid=rowVlaues[0],major=major,gradename=rowVlaues[2],memo=rowVlaues[3])
            except:
                logger.error('  excel          ')
            return render(request,'bg/success.html',{'message':'    '})
        else:
            logger.error('        !')
            return render(request,'bg/failed.html',{'message':'    '})

전재 대상:https://www.cnblogs.com/petrolero/p/9909985.html

좋은 웹페이지 즐겨찾기