[PYTHON] [Django] Installieren Sie Optionsfelder und formatieren Sie Markups

Umgebung

Django 1.10.5


Machen Sie form.py

Erstens form.py, die die Quelle der Form ist Es gibt auch eine Möglichkeit, ModelForm zu verwenden, aber dieses Mal werden wir etwas erstellen, das in form.py vervollständigt wird

form.py


from django import forms
from django.contrib.admin import widgets
import os

CHOICE = {
    ('0','süß'),
    ('1','cool'),
    ('2','Leidenschaft'),
}

form SampleForm(forms.Form):
	select = forms.ChoiceField(label='Attribut', widget=forms.RadioSelect, choices= CHOICE, initial=0)

Sie können die standardmäßig ausgewählten Elemente angeben, indem Sie "initial = index" festlegen Wenn required = False keine Auswahl erfordert, ist es besser, sie zu entfernen.

Machen Sie views.py

Dieses Mal werde ich einfach eine Ansicht schreiben, die nur dieses Formular besteht

views.py


from django.shortcuts import render, get_object_or_404, redirect
from forms.forms import *

def sample_view(request):
	form = SampleForm
	return render(request,
		project/sample.html,
		{"form" : form}
	)

Rufen Sie das Formular auf der HTML-Seite auf

Wie es ist Machen wir das

sample.html


{{ form }}

Grundsätzlich ist dies alles, was Sie benötigen. Wenn Sie jedoch mehrere Eingabeelemente in einem Formular haben, können Sie diese wie folgt einzeln steuern.

sample.html


{{ form.select.label }}{{ form.select}}

Sie können das Optionsfeld oben leicht installieren, aber der Nachteil ist, dass das generierte Markup von "