pip install django-formapi
python
INSTALLED_APPS = [
...
'formapi',
...
]
python
from formapi import Form, StringField, PasswordField
class LoginForm(Form):
username = StringField(label='Username', required=True)
password = PasswordField(label='Password', required=True)
python
from formapi import process_form, render_form
from .forms import LoginForm
python
def login(request):
if request.method == 'POST':
form = process_form(request, LoginForm)
if form.is_valid():
# ...
return redirect('success')
else:
form = LoginForm()
return render_form(request, form)
html
<form method="post">
{% csrf_token %}
{% for field in form %}
<div>
{{ field.label_tag }}: {{ field }}
</div>
{% endfor %}
<button type="submit">Submit</button>
</form>