Menu
CoddyTech

Campo per campo

Fa parte della sezione Form del percorso Django di Coddy. Lezione 8 di 20.

{{ form }} visualizza ogni campo allo stesso modo, uno sotto l'altro. Per inserire ogni campo in un riquadro personalizzato, visualizza i campi uno alla volta.

Un modulo è un elenco dei suoi campi: {% for field in form %} li fornisce nell'ordine in cui li dichiara la classe. {{ field.as_field_group }} visualizza un campo con la relativa etichetta, i relativi errori e il relativo input. Una pagina di registrazione con due nomi affiancati:

<div class="row">
    <div class="half">{{ form.first_name.as_field_group }}</div>
    <div class="half">{{ form.last_name.as_field_group }}</div>
</div>

{{ form.email }} da solo visualizza soltanto l'input: nessuna etichetta e nessun errore che spieghi cosa è andato storto.

Il foglio di stile contiene già una regola .field che trasforma ogni riquadro in una scheda.

challenge icon

Sfida

Facile

In new_event.html, sostituisci {{ form }} con un ciclo sui campi del modulo. Inserisci ogni campo nel proprio <div class="field">, con la relativa etichetta, gli errori e il campo di input.

Premi Run, invia la data next friday e trova l’errore nel riquadro della data.

Provalo tu

{% extends "events/base.html" %}

{% block title %}Add an event{% endblock %}

{% block content %}
<h1>Add an event</h1>
<form method="post">
    {% csrf_token %}
    {{ form }}
    <button type="submit">Add event</button>
</form>
{% endblock %}

Tutte le lezioni di Form

Esercitati da solo: Playground Django