Fix CSV export for nullable foreign keys, closes #612

This commit is contained in:
Simon Willison 2019-11-02 16:12:46 -07:00
commit 2bf7ce5f51
2 changed files with 23 additions and 4 deletions

View file

@ -330,10 +330,14 @@ class DataView(BaseView):
else:
# Look for {"value": "label": } dicts and expand
new_row = []
for cell in row:
if isinstance(cell, dict):
new_row.append(cell["value"])
new_row.append(cell["label"])
for heading, cell in zip(data["columns"], row):
if heading in expanded_columns:
if cell is None:
new_row.extend(("", ""))
else:
assert isinstance(cell, dict)
new_row.append(cell["value"])
new_row.append(cell["label"])
else:
new_row.append(cell)
await writer.writerow(new_row)