Definiowanie pierwszej klasy modelu
Odwzoruj klasę Pythona na tabelę bazy danych.
Definiowanie pierwszej klasy modelu 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.
Model to tabela
W świecie ORM jedna klasa Pythona odpowiada jednej tabeli bazy danych. Każdy model opisuje strukturę przechowywanych wierszy. 🧱
Dziedzicz po db.Model
Klasa dziedziczy po db.Model. Ta pojedyncza klasa bazowa zapewnia jej między innymi obsługę zapytań i zapisywania danych.
class User(db.Model):
passOd nazwy klasy do nazwy tabeli
Domyślnie nazwa tabeli jest nazwą klasy zapisaną małymi literami. Klasa o nazwie User automatycznie odpowiada tabeli user.
Kolumny są atrybutami klasy
Każde pole jest atrybutem klasy ustawionym na db.Column. Typ kolumny, taki jak Integer lub String, informuje bazę danych, co należy przechowywać.
name = db.Column(db.String(80))Każda tabela potrzebuje klucza
Jedna z kolumn powinna być kluczem głównym: unikatowym identyfikatorem każdego wiersza. Dzięki niemu baza danych rozróżnia rekordy.
id = db.Column(db.Integer, primary_key=True)Twój pierwszy pełny model
Połączmy wszystko: klucz i kilka pól. Ta niewielka klasa w pełni opisuje tabelę User oraz jej kolumny.
class User(db.Model):
id = db.Column(db.Integer, primary_key=True)
name = db.Column(db.String(80))Zmień nazwę tabeli
Potrzebujesz niestandardowej nazwy tabeli? Ustaw __tablename__ w klasie, a ORM użyje jej zamiast nazwy domyślnej.
__tablename__ = "users"Twórz instancje jak obiekty
Instancja modelu to zwykły obiekt Pythona. Przekazujesz wartości kolumn jako argumenty nazwane, a każda z nich stanie się zapisywanym wierszem.
u = User(name="Ada")Dodaj pomocne repr
Zdefiniowanie __repr__ sprawia, że obiekty są wyraźnie wyświetlane w powłoce i logach, dzięki czemu łatwiej debugować kod.
def __repr__(self):
return f"<User {self.name}>"Modele trzymaj w jednym miejscu
Trzymaj modele w pliku models.py, aby można je było poprawnie importować w widokach, skryptach i testach bez cyklicznych importów.
Bez śladu SQL
Zauważ, że nie napisano instrukcji CREATE TABLE. Deklaracja modelu jest schematem, a ORM tłumaczy ją na SQL.
Szybkie sprawdzenie
Co reprezentuje klasa modelu Flask-SQLAlchemy?
Podsumowanie
Utworzono model przez dziedziczenie po db.Model, zadeklarowano kolumny, ustawiono klucz główny i poznano zasadę, że sama klasa jest schematem. ✅
Ucz się Python dzięki korepetycjom AI — za darmo
Pisz i uruchamiaj kod w przeglądarce, otrzymuj natychmiastową pomoc od korepetytora AI dostępnego 24/7 i kontynuuj naukę w sieci lub w aplikacji.
- Kursy
- 30
- Lekcje
- 120
Często zadawane pytania
Czy lekcja „Definiowanie pierwszej klasy modelu” jest bezpłatna?
Tak — pełny tekst „Definiowanie pierwszej klasy modelu” 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 „Definiowanie pierwszej klasy modelu”?
Odwzoruj klasę Pythona na tabelę bazy danych. Ć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 „Definiowanie pierwszej klasy modelu”?
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
- Instalowanie i konfigurowanie rozszerzenia
- Definiowanie pierwszej klasy modelu
- Kolumny, typy i ograniczenia
- Tworzenie schematu za pomocą create_all