Wpis z mikrobloga

Chcę zrobić w końcu jakiś projekt i pomyślałem, żeby zrobić coś podobnego do tego, ale w django, a nie w JS. Po sprawdzeniu GET requestów okazało się, że osoba, która wykonała tę stronę, ma wszystkie dane w formacie JSON (link). Nie wiem jak się teraz zabrać do napisania tego projektu i od czego zacząć xD Czy mam to wszystko sczytać i wrzucic do SQL przez django? W jaki sposób robicie większe projekty? Jak to wszystko rozplanować? #python #naukaprogramowania
  • 9
@Griffith: frontend musisz napisac w JS, backend mozesz napisac w dowolnym jezyku. dane mozesz przechowywac w dowolnej formie ale na potrzeby API transformuj je do fomatu JSON lub podobnego, najlepiej JSON bo dla JS ten format jest dosyc naturalny
Większe projekty zazwyczaj robi się tak, że dzielimy całość na różne 'mikroserwisy'

To znaczy, za dostarczenie np. tych danych, które podałeś, odpowiada backend, który skądś tam je bierze, przetwarza czy robi jakieś cuda wianki, a potem zwraca zserializowane w odpowiednim formacie - w tym wypadku jest to JSON. W tym wypadku backend jest zastąpiony jakimś tam specjalnie przygotowanym plikiem.

Taki JSON jest wykorzystywany przez Frontowy klient, napisany w js'ie, z użyciem reacta/angulara/vue
@11001100110O11: Zdaję sobie sprawę, że nie jest to może najlepszy wybór na pierwszy projekt, ale jak się tak ciągle będę zastanawiał i wykonywał nowe tutoriale/ czytał książki to nic z tego nie będzie. Co innego można zrobić z wykorzystaniem Django? Muszę zacząć robić sobie jakieś portfolio.
@Griffith: tak zupełnie z dupy:

napisz backend, ktory po otrzymaniu odpowiedniego requesta na dany endpoint zescrapuje teskt i obrazki ze strony otrzymanej w POSTcie następnie zuploaduje na AWS S3 i zapisze do bazy

do tego zrób endpointy listujące stan otrzymanych zleceń (jedno może trwać długo - trzeba to załatwić asynchronicznie, czyt. celery) oraz linki do pobrania otrzymanych plików. Obrazki możesz dla utrudnienia np. pakować, kompresować przed uploadem

całość opakuj w dockery
@Griffith zrób aplikacje do obsługi podań. Masz dwie grupy użytkowników, klient i pracownik. Klienci mogą złożyć podanie pozwolenie na coś, pracownik może zatwierdzić. Klient dostaje wtedy maila. Zawsze może też sprawdzić status swojego podania. Możesz to później bardzo ładnie rozbudowywać, np dodac termin ważności, dodać email który powiadamia pracowników o zbliżającym się terminie i inne takie ;-)
@Griffith:
Podstawy Django
Podsawy Django ORM
Podstawy Django Rest Framework
Czym jest REST, API

Do tego: celery i jak się integruje z django - wysyłanie tasków i te sprawy, co to asynchroniczność
Do scrapowania: beautifulsoup (jedna metoda w sumie) + skrypcik do pobierania obrazków (są gotowce)

Kompletne podstawy Dockera + Docker-compose