From 6f9cd1eaaa348057975a95367223370db398bed4 Mon Sep 17 00:00:00 2001 From: Iain Learmonth Date: Fri, 22 Apr 2022 14:42:50 +0100 Subject: [PATCH] cli/db: handle integer foreign keys being null --- app/cli/db.py | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/app/cli/db.py b/app/cli/db.py index d118d83..e6e0a4a 100644 --- a/app/cli/db.py +++ b/app/cli/db.py @@ -43,12 +43,17 @@ def impot(model: db.Model): x = model() for i in range(len(header)): if header[i] in ["added", "updated", "destroyed", "deprecated", "last_updated", "terraform_updated"]: + # datetime fields if line[i] == "": line[i] = None else: line[i] = datetime.datetime.strptime(line[i], "%Y-%m-%d %H:%M:%S.%f") - if header[i] in ["eotk"]: + elif header[i] in ["eotk"]: + # boolean fields line[i] = line[i] == "True" + elif header[i].endswith("_id") and line[i] == "": + # integer foreign keys + line[i] = None setattr(x, header[i], line[i]) db.session.add(x) db.session.commit()