0Pricing
Django Academy · Aula

Definindo um forms.Form

Declare campos e seus widgets

Definindo um forms.Form é uma aula grátis de Django Academy no CoddyKit. Esta é a aula 1 de 4. Você pode ler a aula completa abaixo gratuitamente — depois pratica ao vivo no navegador com um editor de código integrado e um tutor de IA 24/7. Faz parte do caminho de aprendizado de Django Academy, e seu progresso é sincronizado entre a web e o app CoddyKit. O curso de Django Academy inclui 4 aulas no total.

Partes desta aula ainda não foram traduzidas e aparecem em inglês.

Why Forms Exist

A Django form turns messy user input into clean Python data, handling rendering and validation in one tidy place. 📝

Subclass forms.Form

You declare a form by subclassing forms.Form. Each class attribute you add becomes a field on that form.

from django import forms

class ContactForm(forms.Form):
    name = forms.CharField()

Fields Are Class Attributes

Every field is a class attribute set to a field instance, like CharField or EmailField. The attribute name becomes the input name.

name = forms.CharField()
email = forms.EmailField()

CharField for Text

Use CharField for short text. Set max_length to cap the size and render a sensible HTML input automatically.

subject = forms.CharField(max_length=120)

EmailField Validates Format

An EmailField checks that the value looks like a real email address, so you do not write that validation yourself.

email = forms.EmailField()

Required by Default

Every field is required unless you say otherwise. Pass required=False to make a field optional for the user.

phone = forms.CharField(required=False)

label and help_text

Add a friendly label and help_text so users understand each field. Django shows them next to the input.

name = forms.CharField(label="Your name",
    help_text="First and last")

Choosing a Widget

A widget controls the HTML rendered for a field. Swap the default to get a textarea, password box, or select.

message = forms.CharField(
    widget=forms.Textarea)

More Field Types

Django ships many fields: IntegerField, BooleanField, DateField, and ChoiceField each map to the right input and parse the value for you.

age = forms.IntegerField()
agree = forms.BooleanField()

ChoiceField and Options

A ChoiceField renders a dropdown from a list of value and label pairs you provide in choices.

plan = forms.ChoiceField(choices=[
    ("free", "Free"), ("pro", "Pro")])

Instantiate the Form

Create an unbound form with no data to display a blank form, or pass data to bind it for validation.

form = ContactForm()  # blank
form = ContactForm(request.POST)

Quick Check

Let us see how forms are defined.

Recap

You subclass forms.Form and add fields as class attributes. Pick the right field type and widget, and Django handles the rest. ✅

Perguntas Frequentes

A aula “Definindo um forms.Form” é grátis?

Sim — o texto completo de “Definindo um forms.Form” é grátis para ler aqui na web. Para praticá-la interativamente (um editor de código integrado e um tutor de IA 24/7) e desbloquear o restante do curso de Django Academy, atualize para CoddyKit PRO. O curso de Django Academy inclui 4 aulas no total.

O que vou aprender em “Definindo um forms.Form”?

Declare campos e seus widgets Você pratica Django Academy com código prático que executa diretamente no navegador, e um tutor de IA 24/7 responde suas dúvidas enquanto trabalha na aula.

Preciso ter experiência prévia para começar Django Academy?

Nenhuma experiência prévia é necessária. Django Academy no CoddyKit é estruturado para alunos iniciantes até avançados, então você pode começar aqui ou desde o início e aprender no seu ritmo. Esta é a aula 1 de 4.

Quanto tempo leva a aula “Definindo um forms.Form”?

A maioria das aulas CoddyKit leva cerca de 5–10 minutos. Cada uma é compacta e interativa, então você faz progresso constante e retoma exatamente de onde parou entre web e app.

Posso escrever e executar código nesta aula de Django Academy?

Sim. Cada aula de Django Academy inclui um editor de código integrado, então você escreve e executa código real direto no navegador e recebe feedback de IA instantaneamente — nenhuma configuração local necessária.

Todas as aulas deste curso

  1. Definindo um forms.Form
  2. is_valid e cleaned_data
  3. Renderizando Formulários em Templates
  4. Proteção CSRF e o Fluxo POST
← Voltar para Django Academy