多个模型表单集实例的单输入

时间:2018-06-20 19:55:54

标签: python django django-forms

我试图弄清楚如何创建一个表单,该表单具有一个带有作者姓名的multichoicefield字段,正好有9个用于书名的空白文本字段,以及一个保存按钮。

目标是一次选择作者,并在数据库中添加9个书名。如果我在9个Book文本字段中使用9个作者下拉列表,则这相对简单。但是我该如何使用单个Author下拉列表来填充9个Book实例?

class Author(models.Model):
    name = models.CharField(max_length=100)

    def __str__(self):
        return self.name

class Book(models.Model):
    name = models.CharField(max_length=100)
    authors = models.ManyToManyField(Author)

class BookForm(ModelForm):
    class Meta:
        model = Book
        fields = ['name', 'authors']

def add_two_books(request):
    BookFormSet = modelformset_factory(Book, form=BookForm, extra=9)
    formset = BookFormSet(request.POST or None, queryset=Author.objects.none())

0 个答案:

没有答案