如何将表单动态添加到 Django 表单集中?

How to add forms dynamically to a Django formset?

我无法理解 create_book_normal() 在此代码中的工作原理。

def create_book_normal(request):
    template_name = 'store/create_normal.html'
    heading_message = 'Formset Demo'

if request.method == 'GET':
    formset = BookFormset(request.GET or None)
elif request.method == 'POST':
    formset = BookFormset(request.POST)
    if formset.is_valid():
        for form in formset:
            name = form.cleaned_data.get('name')
            myuser = form.cleaned_data.get('myuser')
            # save book instance
            if name:
                Book(name=name,myuser=myuser).save()

请解释一下这个重定向是如何工作的。 #store:book_list

        return redirect('store:book_list')

return render(request, template_name, {
    'formset': formset,
    'heading': heading_message,
})

如何将值存储在 store:book_list 中?

如果我将 book 更改为 Book,那么它会显示这样的错误 - /store/book/create_normal

处的 NoReverseMatch

当调用 redirect('store:book_list') 时,Django 正在对 store 命名空间中的 'book-list' url 执行反向查找。

查看您的 Django 项目,看看是否有名为 store 的应用程序以及其中是否有一个 urls.py 文件。您应该看到一个 urlpattern,其中 name='book_list'。重定向将 运行 该 url 模式中的视图。

查看 django urls

上的 official docs