В последней части у вас есть
city = Place.objects.get_or_create(..., parent=region)
Кажется, переменная region
не определена, если первое if
является ложным (выполнение кода никогда не получит присвоить значение region
в таком случае).
Может быть, вам нужно инициализировать переменную вне первого if
(например, region = None
или что-то непосредственно перед первым if
).Вот пример того, как вы могли бы это сделать, но точный путь зависит от остальной части вашего кода:
oblast = Place.objects.get_or_create(name=entry.get('OBL_NAME'))
region = None
if entry.get('REGION_NAME') is not None:
region = ...
if entry.get('CITY_NAME') is not None:
city = Place.objects.get_or_create(
name=entry.get('CITY_NAME'),
parent=region)