0Pricing
Flask Academy · Lekcja

Pola formularza przez request.form

Pobieraj wartości z wysłanych formularzy HTML.

Pola formularza przez request.form to bezpłatna lekcja Flask Academy na CoddyKit. To lekcja 2 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.

Formularze wysyłają dane w treści żądania

Gdy formularz HTML jest przesyłany metodą POST, wartości pól trafiają do body żądania, a nie do adresu URL, więc request.args ich nie znajdzie.

Poznaj request.form

W przypadku przesłanych pól formularza Flask udostępnia request.form — obiekt podobny do słownika, którego kluczami są nazwy poszczególnych elementów input na stronie.

name = request.form["name"]

Atrybut name jest kluczem

Pole pojawia się w request.form pod wartością swojego atrybutu HTML name, więc name="email" staje się request.form["email"].

Używaj .get dla opcjonalnych pól

Podobnie jak w przypadku args, lepiej użyć .get, aby pole pominięte przez użytkownika zwróciło None zamiast powodować awarię widoku.

phone = request.form.get("phone")

Podaj wartość domyślną

Przekaż do .get wartość zapasową, a brakujące opcjonalne pola otrzymają poprawną wartość domyślną, co uprości resztę logiki.

role = request.form.get("role", "user")

Dopasuj metodę HTTP

Dane formularza docierają tylko przy użyciu POST, więc trasa musi allow POST. W przeciwnym razie przeglądarka otrzyma 405, zanim uruchomi się kod.

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

Wartości formularza też są ciągami znaków

Każda wartość formularza jest tekstem. Konwersję wieku, ceny czy liczby elementów trzeba wykonać samodzielnie, pamiętając o obsłudze niepoprawnych danych.

age = int(request.form.get("age", 0))

Obsługuj pola wielowartościowe

Pola wyboru i listy wielokrotnego wyboru mogą wysłać ten sam klucz wiele razy. Użyj getlist, aby zebrać wszystkie wybrane wartości na liście.

picks = request.form.getlist("topics")

Formularz a args — szybkie porównanie

Zapamiętaj różnicę: request.args odczytuje query string z adresu URL, natomiast request.form odczytuje pola z przesłanej treści żądania.

values łączy oba źródła

Potrzebujesz jednego ze źródeł bez względu na to, które to jest? request.values łączy args i form w jeden obiekt podobny do słownika.

token = request.values.get("token")

Prosty widok rejestracji

Po połączeniu wszystkiego handler signup odczytuje imię i adres e-mail z formularza, a następnie odpowiada, gdy ma już oba te dane.

@app.route("/signup", methods=["POST"])
def signup():
    name = request.form["name"]
    return f"Welcome {name}"

Szybkie sprawdzenie

Sprawdź, czy potrafisz odczytywać pola formularza.

Podsumowanie: pola formularza

Pobrano przesłane pola za pomocą request.form, użyto .get z wartościami domyślnymi, obsłużono dane wielowartościowe i pokazano różnicę w stosunku do args. 🙌

Często zadawane pytania

Czy lekcja „Pola formularza przez request.form” jest bezpłatna?

Tak — pełny tekst „Pola formularza przez request.form” 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 „Pola formularza przez request.form”?

Pobieraj wartości z wysłanych formularzy HTML. Ć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 2 z 4.

Ile czasu zajmuje lekcja „Pola formularza przez request.form”?

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. Parametry zapytania przez request.args
  2. Pola formularza przez request.form
  3. Treści JSON przez request.get_json
  4. Nagłówki, pliki cookie i adres IP klienta
← Powrót do Flask Academy