Как добавить поле внешнего ключа в форму модели в Django?

Что я хотел бы сделать, это отобразить одну форму, которая позволяет пользователю:

  • Ввести название документа (из модели Документ)
  • Выбрать один из вариантов user_defined_code из выпадающего списка (заполненного UserDefinedCode
  • Введите уникальный_код (хранится в модели Код)

Я не уверен, как отобразить поля для отношений внешнего ключа в форме. Я знаю, что в представлении можно использовать document.code_set (например) для доступа к связанным объектам для текущего объекта document, но я не уверен, как применить это к ModelForm.

Моя модель:

class UserDefinedCode(models.Model):
    name = models.CharField(max_length=8)
    owner = models.ForeignKey(User)

class Code(models.Model):
    user_defined_code = models.ForeignKey(UserDefinedCode)
    unique_code = models.CharField(max_length=15)

class Document(models.Model):
    title = models.CharField(blank=True, null=True, max_length=200)
    code = models.ForeignKey(Code)
    active = models.BooleanField(default=True)

Моя ModelForm

class DocumentForm(ModelForm):
    class Meta:
        model = Document
21
задан Ben S 18 April 2011 в 20:42
поделиться