Django Форма и несколько полей ForeingKey

Подскажите пожалуйста, когда в модели много связанных полей с другими таблицами, как сделать нормальную форму с заполнением такой модели?

Каким образом создать форму для Project?

class City(models.Model):
    obl = models.CharField(max_length=255, choices=REGIONS, default="24", verbose_name="Регион")
    name = models.CharField(max_length=128, verbose_name="Город")
    population = models.IntegerField()

class Address(models.Model):
    city = models.ForeignKey(City, on_delete=models.PROTECT, verbose_name="Город")
    street = models.CharField(max_length=255, verbose_name="Улица")
    numb = models.CharField(max_length=64, verbose_name="Номер дома")

class Project(models.Model):
    manager = models.ForeignKey(User, on_delete=models.PROTECT, verbose_name="Сотрудник")
    address = models.ForeignKey(Address, on_delete=models.PROTECT, verbose_name="Адрес")
    vis = models.DateField(verbose_name="Подписан дата", blank=True)
    accept = models.DateField(verbose_name="Принят дата", blank=True)

Можно объявить форму с помощью класса ModelForm

from .models import Project
class ProjectForm(ModelForm):
    class Meta:
        model = Project
        fields = ('manager', 'adress', 'vis', 'accept')

Или класса Form и ModelChoiceField

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