When importing the database from csv, it appears that it does not
update the reference id's in list:reference.
It looks like to me that only references are mapped to their new
values and list:reference is just grabbed as a string.
In dal.py, within import_from_csv, the fix function seems to just
convert all lists to string or int and never runs the items within
list:reference through the id map.
def fix(field, value, id_map):
if value == null:
value = None
elif field.type.startswith('list:string'):
value = bar_decode_string(value)
elif field.type.startswith('list:'):
value = bar_decode_integer(value)
elif id_map and field.type.startswith('reference'):
try:
value = id_map[field.type[9:].strip()][value]
except KeyError:
pass
return (field.name, value)
I believe a fix would be to check for list:reference and then pass it
through bar_code_string and then for each item map its values, but I
have been unsuccessful so far.