Заполнить поле панели администратора, а затем извлечь его и использовать для заполнения другого поля

У меня есть такой код admin.py:

class ElectionAdmin(admin.ModelAdmin):

    def get_form(self, request, obj=None, **kwargs):
        form = super().get_form(request, obj, **kwargs)
        print(obj.province)
        if obj:            
            if form.base_fields['province']:
                form.base_fields['city'].queryset = City.objects.filter(province_id=form.base_fields['province'])
            else:
                form.base_fields['city'].queryset = City.objects.none()
        else:
            form.base_fields['city'].queryset = City.objects.none()
        return form

и этот код models.py:

class Province(models.Model):
    name = models.CharField(max_length=70, unique=True, null=True, blank=True,)

class City(models.Model):
    province = models.ForeignKey("election.Province", on_delete=models.CASCADE)
    name = models.CharField(max_length=70, unique=True, null=True, blank=True,)

class Election(models.Model):
    province = models.ForeignKey("election.Province", on_delete=models.SET_NULL, null=True, blank=True,) 
    city = models.ForeignKey("election.City", on_delete=models.SET_NULL, null=True, blank=True,)
    

как изменить функцию get_form в админ панели для заполнения поля province, а затем получить его и использовать для заполнения поля city (просто показать города, которые принадлежат к этой провинции)
С помощью этой функции get_form я получаю следующее:

None

None

Вернуться на верх