У меня есть база данных, которая синхронизируется с внешним веб-источником два раза в день. Этот веб-источник содержит несколько записей, которые имеют имена и некоторую дополнительную информацию об этих именах.
Некоторые из этих имен глупы, и я хочу переименовать их при вставке в мою собственную базу данных. Чтобы переименовать эти глупые имена, у меня есть стандартный словарь как таковой:
RENAME_TABLE = { "Wσird" : "Weird", ... }
Как видите, именно здесь вступает в игру UTF-8. Это функция, которая выполняет переименование всех проблемных записей:
def rename_all_entries():
all_keys = RENAME_TABLE.keys()
entries = Entry.objects.filter(name__in=all_keys)
for entry in entries:
entry.name = RENAME_TABLE[entry.name]
entry.save()
Поэтому он пытается найти старое имя в RENAME_TABLE
и переименовывает запись, если найдена. Тем не менее, я получаю исключение KeyError
при использовании RENAME_TABLE[entry.name]
.
Теперь я потерялся, что мне делать? У меня есть ...
# -*- coding: utf-8 -*-
... в верхней части файла Python.