Django bootstrap4-参数“ form”应包含有效的Django Form

时间:2019-07-08 23:21:58

标签: django forms bootstrap-4

我收到以下Bootstrap异常

'Parameter "form" should contain a valid Django Form.' 

this教程中运行以下代码时:

{% load bootstrap4 %}

<form action="/url/to/submit/" method="post" class="form">
    {% csrf_token %}
    {% bootstrap_form form %}
    {% buttons %}
        <button type="submit" class="btn btn-primary">Submit</button>
    {% endbuttons %}
</form>

“ bootstrap_form form ”中的第二个“ form”是否应该引用/指向某物?它是变量吗?什么是有效的django表格?我检查了有关此问题的几条帖子和答案,但无法理解此错误。

编辑查看代码:

from django.shortcuts import render

def hello_world(request):
    return render(request, 'hello_world.html', {})

1 个答案:

答案 0 :(得分:1)

我遇到了同样的问题,花了整整一整天才弄清。

django-bootstrap4的Quickstart部分对初学者不太友好。

{% bootstrap_form form %}

form是一个参数,应从views.py传输。根据您的情况,应将form添加到return render(request, 'hello_world.html', {})

  1. 创建一个名为forms.py的文件,并将以下代码放入其中。

(forms.py应该放在views.py的同一文件夹中)

from django import forms

class NameForm(forms.Form):
    your_name = forms.CharField(max_length=100)
  1. 修改views.py并添加以下代码:
# ...
from .forms import NameForm

# ...
def hello_world(request):
    form = NameForm()
    return render(request, 'hello_world.html', {'form': form})
# ...