Menu
CoddyTech

Pole po polu

Część sekcji Formularze ścieżki Django w Coddy. Lekcja 8 z 20.

{{ form }} wyświetla każde pole w ten sam sposób, jedno pod drugim. Aby umieścić każde pole we własnym polu, wyświetlaj je pojedynczo.

Formularz to lista jego pól: {% for field in form %} udostępnia je w kolejności zadeklarowanej przez klasę. {{ field.as_field_group }} wyświetla jedno pole wraz z etykietą, błędami i polem do wprowadzania danych. Strona rejestracji z dwoma imionami obok siebie:

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

Samo {{ form.email }} wyświetla tylko pole do wprowadzania danych: bez etykiety i bez informacji o błędzie, która wyjaśniałaby, co poszło nie tak.

Arkusz stylów zawiera już regułę .field, która zmienia każde pole w kartę.

challenge icon

Wyzwanie

Łatwy

W pliku new_event.html zastąp {{ form }} pętlą przechodzącą po polach formularza. Umieść każde pole w osobnym <div class="field">, razem z etykietą, błędami i polem do wprowadzania danych.

Wpisz tytuł i miejsce, a jako datę podaj najbliższy piątek: komunikat „Wprowadź prawidłową datę” pojawia się na karcie daty.

Spróbuj swoich sił

{% 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 %}

Wszystkie lekcje w sekcji Formularze

Poćwicz samodzielnie: Edytor online Django