0Pricing
Flask Academy · Lekcja

Budowanie formularza HTML wysyłanego metodą POST

Utwórz formularz, którego action wskazuje trasę.

Budowanie formularza HTML wysyłanego metodą POST to bezpłatna lekcja Flask Academy na CoddyKit. To lekcja 1 z 4. Możesz przeczytać całą lekcję poniżej za darmo — a potem ćwiczyć ją interaktywnie w przeglądarce z wbudowanym edytorem kodu i tutorem AI dostępnym 24/7. To część ścieżki edukacyjnej Flask Academy, a Twój postęp synchronizuje się między webem a aplikacją CoddyKit. Kurs Flask Academy zawiera 4 lekcji w sumie.

Dlaczego formularze są ważne

Formularz HTML (form) służy przeglądarce do zebrania wpisanych danych i przekazania ich serwerowi. To punkt wyjścia dla niemal każdej czynności użytkownika. 📝

Element form

Wszystko zaczyna się od znacznika form. Przeglądarka zbiera wszystkie pola znajdujące się wewnątrz i wysyła je razem po przesłaniu formularza przez użytkownika.

<form>
  <!-- fields go here -->
</form>

Wskaż adres za pomocą action

Atrybut action określa adres URL, który otrzyma dane. Pozostawienie go pustego spowoduje wysłanie danych na tę samą stronę, na której znajduje się formularz.

<form action="/signup">

Wybierz metodę

Ustaw method na post, aby wartości zostały przesłane w treści żądania, a nie w adresie URL. Dzięki temu dane formularza nie pojawią się w historii przeglądarki.

<form action="/signup" method="post">

Nadaj nazwę każdemu polu

Każde pole wejściowe potrzebuje atrybutu name. Ta nazwa staje się kluczem, którego Flask używa do znalezienia wartości po stronie serwera.

<input type="text" name="username">

Dodaj przycisk przesyłania

Przycisk submit uruchamia wysyłanie. Kliknięcie go nakazuje przeglądarce zebrać nazwane pola i wysłać żądanie na adres action.

<button type="submit">Sign up</button>

Dopasuj metody tras

Trasa odbierająca dane musi zezwalać na metodę POST. Należy wymienić ją w methods, w przeciwnym razie Flask zwróci 405, a dane formularza nie dotrą do aplikacji.

@app.route("/signup", methods=["GET", "POST"])
def signup():
    ...

Odczytuj wartości z request.form

Po stronie serwera przesłane pola znajdują się w request.form — obiekcie podobnym do słownika, którego kluczami są nazwy pól zdefiniowane w kodzie HTML.

username = request.form["username"]

Serwuj formularz przy użyciu GET

Gdy żądanie jest typu GET, wystarczy renderować stronę wyświetlającą pusty formularz, aby użytkownik miał gdzie wprowadzić dane.

if request.method == "GET":
    return render_template("signup.html")

Obsłuż gałąź POST

Gdy metoda to POST, należy odczytać pola i odpowiednio je obsłużyć. Jeden widok może zarówno wyświetlać formularz, jak i processować jego przesłanie.

if request.method == "POST":
    name = request.form["username"]

Kompletny mały formularz

Połączmy wszystko: formularz wysyłający dane do /signup oraz widok witający użytkownika. To pełna round trip w zaledwie kilku wierszach.

@app.route("/signup", methods=["GET", "POST"])
def signup():
    if request.method == "POST":
        return "Hi " + request.form["username"]
    return render_template("signup.html")

Szybkie sprawdzenie

Sprawdźmy, co sprawia, że formularz rzeczywiście wysyła dane.

Podsumowanie: wysyłanie formularzy

Zbudowali Państwo form z atrybutem action i metodą post, nadali nazwy polom, zezwolili na POST na trasie i odczytali wartości z request.form. 🎉

Często zadawane pytania

Czy lekcja „Budowanie formularza HTML wysyłanego metodą POST” jest bezpłatna?

Tak — pełny tekst „Budowanie formularza HTML wysyłanego metodą POST” jest dostępny za darmo tutaj w sieci. Aby ćwiczyć ją interaktywnie (wbudowany edytor kodu i tutor AI dostępny 24/7) i odblokować resztę kursu Flask Academy, przejdź na CoddyKit PRO. Kurs Flask Academy zawiera 4 lekcji w sumie.

Co nauczysz się w „Budowanie formularza HTML wysyłanego metodą POST”?

Utwórz formularz, którego action wskazuje trasę. Ćwiczysz Flask Academy z praktycznym kodem, który uruchamiasz bezpośrednio w przeglądarce, a tutor AI dostępny 24/7 odpowiada na Twoje pytania podczas pracy nad lekcją.

Czy potrzebuję doświadczenia, aby zacząć Flask Academy?

Nie wymagamy żadnego doświadczenia. Flask Academy w CoddyKit jest strukturyzowany dla początkujących i zaawansowanych użytkowników, więc możesz zacząć tutaj lub od początku i uczyć się w swoim tempie. To lekcja 1 z 4.

Ile czasu zajmuje lekcja „Budowanie formularza HTML wysyłanego metodą POST”?

Większość lekcji CoddyKit trwa około 5–10 minut. Każda lekcja to mały, interaktywny krok, dzięki czemu robisz systematyczne postępy i zawsze wracasz dokładnie do tego samego miejsca — na webie i w aplikacji.

Czy mogę pisać i uruchamiać kod w tej lekcji Flask Academy?

Tak. Każda lekcja Flask Academy zawiera wbudowany edytor kodu, więc piszesz i uruchamiasz prawdziwy kod bezpośrednio w przeglądarce i od razu otrzymujesz sprzężenie zwrotne od AI — bez konfiguracji na komputerze.

Wszystkie lekcje w tym kursie

  1. Budowanie formularza HTML wysyłanego metodą POST
  2. Odczytywanie domyślnych parametrów zapytania
  3. Ręczna walidacja wymaganych pól
  4. Przekierowanie po POST (wzorzec PRG)
← Powrót do Flask Academy