20 Apr 16:55
zad
Przygotuj aplikację, która umożliwia przechowywanie prostego katalogu aut.
Aplikacja powinna przechowywać informacje w bazie danych MongoDB (jedna kolekcja).
Przygotuj funkcję pozwalające na
utworzenie kolekcji
dodanie dokumentu do kolekcji (dokument składa się z pół "id", "marka", "model", "rocznik", "polubienia")
aktualizację dokumentu (powiększenie/pomniejszenie liczby polubień o 1)
usunięcia dokumentu
pobrania jednego dokumentu (id)
pobrania wszystkich dokumentów
Przygotuj punkty końcowe aplikacji
"/" - (HTML) wyświetla listę aut (zgodnie z szablonem) - oraz umożliwia zwiększenie / zmniejszenie liczby polubień danego auta
"/cars" - (JSON) pobiera listę aut
"/like/{car_id}" - zwiększa liczbę polubień auta
"/dislike/{car_id}" - zmniejsza liczbę polubień auta
"/cars/add" - dodaje auto
Po zwiększaniu/zmniejszeniu liczby polubień przekieruj użytkownika na stronę główną korzystając z https://fastapi.tiangolo.com/uk/advanced/custom-response/#redirectresponse
Dodatkowe informacje:
przydatną/konieczną może być konwersja "_id" z bazy danych na "str" przy odczycie danych, natomiast przy metodzie "find" konwersja z "str" na "ObjectId" (from bson.objectid import ObjectId)
Uwaga!
Do uruchamiana i testowania kodu konieczne jest skorzystanie z lokalnej instancji serwera bazy Mongo.
Można zainstalować w swoim domowym PC lub laptopie lokalny serwer Mongo i na nim testować zadanie.
Lokalny serwer MongoDB jest uruchomiony w domyślnym trybie bez kont i autoryzacji i jest dostępny na 'localhost'.
Zobacz: https://www.mongodb.com/docs/manual/tutorial/install-mongodb-on-windows/
Lub wersja w Linux: https://www.mongodb.com/try/download/community
Można również założyć własne konto na internetowym serwerze: https://www.mongodb.com/try?tck=community_atlas_ct
do testów