データをExcelワークシートに挿入したいと思います。私は次のコードを書いたモデルが更新されていません
:プリント(USER2)で
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()
を、多くの<QuerySet []>
が示されました。だから私は多分user2を得ることができないと思う。
さらに、if-elseステートメントif data_dict['name'] == 'Tom':
では、user2は更新されません。
私のコードで何が間違っていますか?ところで、data_dict
が正常に取得されます。
THXの、ウルanswer.Iはウルのコードが、アプリを書きました。 models.DoesNotExist:クエリに一致するユーザーが存在しません。エラーが発生します。これをどのように修正する必要がありますか? – user8504021
これは、その特定の名前のユーザーがデータベースに存在しないことを意味します。データベースにデータを設定しましたか?クエリを実行する前に、いくつかのユーザーを追加する必要があります。最初に './manage.py shell'を使ってクエリを実行し、何が起こるかを見てください。 –