11. diel - REST API v Django REST - Filtrovanie filmov

V predchádzajúcej lekcii, REST API v Django REST - Serializer a ViewSet filmov , sme pre entitu filmu v našom projekte doplnili serializer, ViewSet a nastavili URL adresy.

V tomto Python tutoriále sa zameriame na implementáciu filtrovania filmov v našej Django REST API. Umožníme užívateľovi filtrovať filmy podľa hercov, režiséra, žánru a roku vydania. Rovnako ako pri filtrovaní osôb pridáme aj možnosť obmedzenia počtu výsledkov pomocou parametra limit.

Vytvorenie triedy MovieService

V priečinku api/services/ vytvoríme nový súbor s názvom movie_service.py. Bude obsahovať triedu MovieService a jej statickú metódu get_filtered_queryset(), ktorá na základe zadaných parametrov vráti vyfiltrovaný queryset.

Súbor upravíme do nasledujúcej podoby:

from ..models import Movie


class MovieService:
    @staticmethod
    def get_filtered_queryset(director_id=None, actor_id=None, genre=None, from_year=None, to_year=None, limit=None):
        queryset = Movie.objects.all()

Filtrácia podľa osôb a žánru

V premennej queryset sú zatiaľ uložené všetky filmy. Pomocou zadaných parametrov ich budeme postupne filtrovať. Rozšírime preto metódu get_filtered_queryset() o


 

...koniec náhľadu článku...
Pokračuj ďalej

Vedomosti v hodnote stoviek tisíc získaš za pár eur

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émiovej sekcie.

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íš s Prevádzkovými podmienkami.

Čo od nás v ďalších lekciách dostaneš?
  • Prístup k jednotlivým lekciám podľa spôsobu obstarania.
  • 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 tutoriáli REST API v Python frameworku Django sprevádzkováme filtrovanie filmov pomocou Django ORM a dokončíme tým prácu s entitou filmu.
Článok pre vás napísal 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