10. diel - REST API v Django REST - Serializer a ViewSet filmov Nové
V predchádzajúcej lekcii, REST API v Django REST - Model filmu a databázovej väzby , sme vytvorili model filmu pre našu REST API v Django REST Frameworku.
V tomto Python tutoriále doplníme do našej filmovej databázy serializer entity filmu a vytvoríme základný ViewSet pre zobrazenie filmov. Potom v Django REST Framework filmoch nastavíme endpointy pre komunikáciu s klientom.
Serializácia filmov
Z minulosti máme v našom projekte pripravený model Movie
.
Teraz teda pre neho potrebujeme vytvoriť serializer.
Serializer filmov sa postará o prevod medzi
databázovým modelom a JSON odpoveďou v API.
Serializer v Django REST Framework (DRF) definuje, aké dáta sa majú
zobraziť, validovať a uložiť.
Zachovanie menných konvencií
Naše API používa polia pomenované pomocou inej konvencie, než
používame v Pythone. Preto tieto hodnoty budeme musieť v serializéri
preložiť. Pokiaľ v dotaze dostaneme hodnotu isAvailable
či
dateAdded
, budeme vedieť, že ide o hodnoty modelu
is_available
, date_added
a naopak.
V súbore serializer.py
si teda vytvoríme novú triedu
MovieSerializer
a doplníme do nej kód pre prevod uvedených
hodnôt:
class MovieSerializer(serializers.ModelSerializer): isAvailable = serializers.BooleanField(source="is_available", required=True) dateAdded = serializers.DateTimeField(source="date_added", read_only=True)
Napojenie hercov a režisérov
Ako ďalší potrebujeme
...koniec náhľadu článku...
Pokračuj ďalej
Došiel si až sem a to je super! Veríme, že ti prvé lekcie ukázali niečo nového a užitočného.
Chceš v kurze pokračovať? Prejdi do prémiové sekcie.
Kúpiť tento kurz
Pred kúpou tohto článku je potrebné kúpiť predchádzajúci diel
Obsah článku spadá pod licenciu Premium III, kúpou článku súhlasíš so zmluvnými podmienkami.
- Neobmedzený a trvalý prístup k jednotlivým lekciím.
- Kvalitné znalosti v oblasti IT.
- Zručnosti, ktoré ti pomôžu získať vysnívanú a dobre platenú prácu.
Popis článku
Požadovaný článok má nasledujúci obsah:
V Python tutoriále rozšírime náš Django REST projekt o serializer a ViewSet pre filmy, definujeme ich žánre a nastavíme routovanie.
Kredity získaš, keď podporíš našu sieť. To môžeš urobiť buď zaslaním symbolickej sumy na podporu prevádzky alebo pridaním obsahu na sieť.