呈现清晰的表单+无提交按钮



我试图在表单中使用脆皮布局。我遵循了说明和教程,但因为我是Django和python的新手,所以我迷路了,它不能像提交按钮一样呈现我的表单。

我已经定义了模型形式:

class nowyPhForm(forms.ModelForm):
class Meta:
model = Phandlowy
fields = ('imie', 'nazwisko', 'email', 'telefon', 'firma', 'filia')
def __init__(self, *args, **kwargs):
super(nowyPhform, self).__init__(*args, **kwargs)
self.helper = FormHelper()
self.helper.form_method = 'post'
self.helper.form_action = 'submit_survey'
self.helper.add_input(Submit('submit', 'Submit'))
self.helper.layout = Layout(
Row(
Column('imie', css_class='form-group col-md-6 mb-0'),
Column('nawisko', css_class='form-group col-md-6 mb-0'),
css_class='form-row'
),
Row(
Column('email', css_class='form-group col-md-6 mb-0'),
Column('telefon', css_class='form-group col-md-6 mb-0'),
css_class='form-row'
),
Row(
Column('firma', css_class='form-group col-md-6 mb-0'),
Column('filia', css_class='form-group col-md-6 mb-0'),
css_class='form-row'
),
Submit('submit', 'Sign in')
)

和HTML

{% load crispy_forms_tags %}
{% block content %}
<div class="container">
{% crispy form %}
</div>
{% endblock %}

若有人能发现问题,我将不胜感激。

您可以手动添加提交按钮,如下所示。以下片段将呈现您的表单。

views.py

from django.shortcuts import render, redirect
from .forms import nowyPhForm
def view(request):
form = nowyPhForm()
if request.method == 'POST':
form = nowyPhForm(request.POST)
if form.is_valid():
form.save()
return redirect('some_other_url')
return render(request,'template.html',{'form':form})

template.html

{% load crispy_forms_tags %}
{% block content %}
<div class="container">
<form method="POST">
{% csrf_token %}
{{ form | crispy }}
<button type="submit">Submit</button>
</form>
</div>
{% endblock %}

这对我有效(在template.html中(:

{% crispy form form.helper %}

最新更新