0
我想将数据放入Excel工作表。模型未更新
我写了下面的代码:
data_dict ={}
data_dict =defaultdict(dict)
def try_to_int(arg):
try:
return int(arg)
except:
return arg
def main():
book4 = xlrd.open_workbook('./data/excel1.xlsx')
sheet4 = book4.sheet_by_index(0)
tag_list = sheet4.row_values(0)[1:]
for row_index in range(1, sheet4.nrows):
row = sheet4.row_values(row_index)[1:]
row = list(map(try_to_int, row))
value = dict(zip(tag_list, row))
data_dict[value['age']].update(value)
user2 = User.objects.filter(name=data_dict['name'])
print(user2)
if user2:
if data_dict['name'] == 'Tom':
user2.update(close_rate_under_300_ny = data_dict['300'],
close_rate_under_700_ny = data_dict['d700'],
close_rate_upper_700_ny = data_dictt['u700'])
elif data_dict['name'] == 'John':
user2.update(close_rate_under_300_eu = data_dict['300'],
close_rate_under_700_eu = data_dict['d700'],
close_rate_upper_700_eu = data_dict['u700'])
elif data_dict['name'] == 'Blear':
user2.update(close_rate_under_300_uk = data_dict['300'],
close_rate_under_700_uk = data_dict['d700'],
close_rate_upper_700_uk = data_dict['u700'])
else:
user2.update(close_rate_under_300_ch=data_dict['300'],
close_rate_under_700_ch = data_dict['d700'],
close_rate_upper_700_ch = data_dict['u700'])
main()
在打印(用户2),许多<QuerySet []>
2所示。所以我认为也许user2不能被获得。
此外,在if data_dict['name'] == 'Tom':
的if-else语句中,user2未更新。
我的代码有什么问题?顺便说一下,data_dict
正常。
THX,乌尔answer.I写我们的代码,但应用程序。 models.DoesNotExist:用户匹配的查询不存在。错误发生。我应该如何解决这个问题? – user8504021
这意味着数据库中没有用户使用该特定名称。你填充数据库了吗?在查询之前,您必须先添加一些用户。先用'./manage.py shell'试试你的查询,看看会发生什么。 –