有导入功能的models,删除数据报错
来源:13-8 excel导入插件介绍
干课人
2019-05-23
老师,我这边添加了导入Excel的功能,Excel可以正常导入。
但是添加了导入功能的models,我直接点进去信息,然后执行删除,会发生报错。
导入逻辑如下:
def post(self, request, *args, **kwargs):
cluster = Harddisk()
if ‘excel’ in request.FILES:
form = UploadExcelForm(request.POST, request.FILES)
if form.is_valid():
wb = xlrd.open_workbook(
filename=None, file_contents=request.FILES[‘excel’].read()) # 关键点在于这里
# 获取excel第一个表
table = wb.sheets()[0]
# 获取该表行数
row = table.nrows
print(maxid)
# 第一行一般为表头,故从该表第二行开始循环取值
for i in range(1, row):
maxid = Cluster.objects.all().aggregate(Max(‘id’))[‘id__max’]
maxid += 1
cluster.id = maxid
cluster.disktype = table.row_values(i)[1]
cluster.israid = table.row_values(i)[2]
cluster.raidtype = table.row_values(i)[3]
cluster.diskdesc = table.row_values(i)[4]
cluster.save()
return super(HarddiskAdmin, self).post(request, args, kwargs)
报错截图如下:
1回答
-
bobby
2019-05-24
如果没有添加excel的话删除会报错吗? 因为xadmin中以及提供了导入和导出的功能可以直接使用xadmin本身提供的插件,可以看看这个源码中有具体的用法 https://github.com/sshwsfc/xadmin/blob/master/xadmin/plugins/importexport.py
00
相似问题