如何创建允许在 Django 中添加多个 phone 号码的联系表单
How to create a contact form allowing to add multiple phone numbers in django
我正在 django 中创建一个简单的联系人应用程序,我想让每个人都拥有一个以上的 phone 号码。
我的 models.py 看起来像这样:
from django.db import models
class Person(models.Model):
first_name = models.CharField(max_length=150)
last_name = models.CharField(max_length=150)
birthday = models.DateField(null=True, blank=True)
def __str__(self):
return ' '.join([self.first_name, self.last_name])
class Phone(models.Model):
phone_number = models.CharField(max_length=12)
description = models.CharField(max_length=25)
person = models.ForeignKey(Person, on_delete=models.CASCADE)
def __str__(self):
return self.phone_number
我需要创建一个表单,我可以在其中添加核心联系信息和任意数量的 phone 号码。
我有一个像
这样的模型
class PersonForm(forms.ModelForm):
class Meta:
model = Person
fields = '__all__'
如何创建允许插入 phone 号码的 phone_number 字段?
这是一个很好的教程,如果您遇到困难,它可能比文档更有帮助:
http://whoisnicoleharris.com/2015/01/06/implementing-django-formsets.html
它使用表单集,允许您在一个页面上拥有和使用多个相同类型的表单。
还向您展示了一个 JQuery 插件,允许您动态添加和删除表单。
我正在 django 中创建一个简单的联系人应用程序,我想让每个人都拥有一个以上的 phone 号码。
我的 models.py 看起来像这样:
from django.db import models
class Person(models.Model):
first_name = models.CharField(max_length=150)
last_name = models.CharField(max_length=150)
birthday = models.DateField(null=True, blank=True)
def __str__(self):
return ' '.join([self.first_name, self.last_name])
class Phone(models.Model):
phone_number = models.CharField(max_length=12)
description = models.CharField(max_length=25)
person = models.ForeignKey(Person, on_delete=models.CASCADE)
def __str__(self):
return self.phone_number
我需要创建一个表单,我可以在其中添加核心联系信息和任意数量的 phone 号码。
我有一个像
这样的模型class PersonForm(forms.ModelForm):
class Meta:
model = Person
fields = '__all__'
如何创建允许插入 phone 号码的 phone_number 字段?
这是一个很好的教程,如果您遇到困难,它可能比文档更有帮助: http://whoisnicoleharris.com/2015/01/06/implementing-django-formsets.html
它使用表单集,允许您在一个页面上拥有和使用多个相同类型的表单。 还向您展示了一个 JQuery 插件,允许您动态添加和删除表单。