Buen día, comparto mi solución al reto.
Repositorio: https://github.com/cristian-rincon/api-movies
Si les gusta los invito a seguirme en mi github: https://github.com/cristian-rincon
class MovieService:
def __init__(self, database: Session):
"""Movie service."""
self.database = database
def get_movies(self, genre: str = "", year: int = 1900, id: int = 0) -> tuple:
"""Get movies endpoint. If no filters are provided, return all movies.
Args:
genre (str): Movie genre.
year (int): Movie year.
id (int): Movie id.
Returns:
tuple: Movies and filtered movies.
"""
movies = self.database.query(MovieORM).all()
filtered_movies = []
if genre:
filtered_by_genre = get_movies_by_genre(genre, self.database)
filtered_movies.append(filtered_by_genre)
elif year:
filtered_by_year = get_movies_by_year(year, self.database)
filtered_movies.append(filtered_by_year)
elif id:
filtered_by_id = get_movie_by_id(id, self.database)
filtered_movies.append(filtered_by_id)
return movies, filtered_movies
¿Quieres ver más aportes, preguntas y respuestas de la comunidad?
o inicia sesión.