Nové výhodné předplatné namísto kreditů je tu! Více informací. Upravili jsme také naše provozní podmínky.
NOVINKA: Staň se datovým analytikem a získej jistotu práce, lepší plat a nové kariérní možnosti. Více informací:

Lekce 10 - REST API v Django REST - Serializer a ViewSet filmů

V předchozí lekci, REST API v Django REST - Model filmu a databázové vazby, jsme vytvořili model filmu pro naší REST API v Django REST Frameworku.

V tomto Python tutoriálu doplníme do naší filmové databáze serializer entity filmu a vytvoříme základní ViewSet pro zobrazení filmů. Poté v Django REST Frameworku filmům nastavíme endpointy pro komunikaci s klientem.

Serializace filmů

Z dřívějška máme v našem projektu připravený model Movie. Nyní tedy pro něj potřebujeme vytvořit serializer. Serializer filmů se postará o převod mezi databázovým modelem a JSON odpovědí v API. Serializer v Django REST Framework (DRF) definuje, jaká data se mají zobrazit, validovat a uložit.

Zachování jmenných konvencí

Naše API používá pole pojmenované pomocí jiné konvence, než používáme v Pythonu. Proto tyto hodnoty budeme muset v serializeru přeložit. Pokud v dotazu dostaneme hodnotu isAvailable či dateAdded, budeme vědět, že se jedná o hodnoty modelu is_available, date_added a naopak.

V souboru serializer.py si tedy vytvoříme novou třídu MovieSerializer a doplníme do ní kód pro převod uvedených hodnot:

class MovieSerializer(serializers.ModelSerializer):
    isAvailable = serializers.BooleanField(source="is_available", required=True)
    dateAdded = serializers.DateTimeField(source="date_added", read_only=True)

Napojení herců a režisérů

Jako další potřebujeme


 

...konec náhledu článku...
Pokračuj dál

Znalosti v hodnotě stovek tisíc získáš za pár korun

Došel jsi až sem a to je super! Věříme, že ti první lekce ukázaly něco nového a užitečného.
Chceš v kurzu pokračovat? Přejdi do prémiové sekce.

Před koupí tohoto článku je třeba koupit předchozí díl

Obsah článku spadá pod licenci Premium III, koupí článku souhlasíš s Provozními podmínkami.

Co od nás v dalších lekcích dostaneš?
  • Přístup k jednotlivým lekcím dle způsobu pořízení.
  • Kvalitní znalosti v oblasti IT.
  • Dovednosti, které ti pomohou získat vysněnou a dobře placenou práci.

Popis článku

Požadovaný článek má následující obsah:

V Python tutoriálu rozšíříme náš Django REST projekt o serializer a ViewSet pro filmy, definujeme jejich žánry a nastavíme routování.
Článek pro vás napsal Filip Zeman
Avatar
Autor se věnuje vývoji aplikací hlavně kolem technologií .NET a to jak ve sféře desktopové, mobilní, tak hlavně samozřejmě webové. Nepohrdne ani Reactem či Djangem.
Aktivity