簡體   English   中英

未顯示外鍵字段的外鍵 - Django

[英]Foreign key of foreign key fields are not shown - Django

我想創建用於創建具有外鍵Address的新人Personform (所有這些模型僅供練習)。 問題是,我看不到地址 label,也看不到PersonCreateForm模板中的地址文本字段。 這是我的代碼:

person_app/models.py

class Person(models.Model):
    name = models.CharField(max_length=20)
    address = models.ForeignKey('address_app.Address', on_delete=models.CASCADE)

address_app/models.py

class Address(models.Model):
    country = models.CharField(max_length=30)

person_app/forms.py

class CreatePersonForm(ModelForm):
    def save(self, commit=False):
        person= super(CreatePersonForm, self).save(commit=False)
        Person.objects.create(
                name = person.name,
                address = person.address.country)

person.html

<h1>{{ form.name }}</h1> (name is visible)
<h1>{{ form.address }}</h1> (but address not)

您的CreatePersonForm表單應該與此類似 -

class CreatePersonForm(ModelForm):

    class Meta:
        model = Person
        fields = ("name", "address")

    def save(self, commit=False):
        person= super(CreatePersonForm, self).save(commit=False)
        Person.objects.create(
                name = person.name,
                address = person.address.country)

試試這個,讓我知道它是否有效。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM