Projekt Django + Vue - pytanie

2

Hej yo,

Zbieram sie do napisania prywatnego projektu. Bedzie to apka zwiazana z treningami personalnymi oraz rozpiskami diet - Klient wypelnia formularz, ze chcialby podjac wspolprace po czym, po weryfikacji, zostaje mu przydzielone konto. Na konto beda przypisywane rozpiski, diety, gramatura itp. (Z napisanego specjalnego panelu). Projekt chce napisac w Django i ogolny zarys i pomysl mam, ale... Wczesniejsze projekty do ktorych uzywalem Vue, uzywalem na zasadzie zaciagniecia libki w <script> oraz hookowania konkretnych elementow. Podsumowujac traktowalem VUE jak nowsza wersje jquery. Obejrzalem dzisiaj pare tutkow na yt jak ludzie lacza Django z Vue i glownie te dwie rzeczy sa od siebie odseparowane. Django stawia jeden serwer, ktory jest odpowiedzialny za api (REST) natomiast Vue tworzy swoj projekt (i serwer) na ktorym trzyma swoj html i po prostu uzywa informacji odpytujac api Django. W tym momencie zastanawiam sie ktora droga pojsc - Pakowac wszystko w Django, czy powyzsze rozwiazanie. Byl bym wdzieczny za jakies con/pros obu opcji. Thank you from the mountain :D

1

Nie specjalnie rozumiem co masz na mysli.

Większość aplikacji jest napisana tak że są dwa projekty - klient i server. U Ciebie wiadomo, klientem będzie aplikacja webowa w Vue, a server ofc to Django.

Zadaj konkretniejsze pytanie.

0
ledi12 napisał(a):

W sumie mi odpowiedziales. Wczesniej sam projekt Django sluzyl mi jako klient i serwer a w tym momencie chce to rozbic tak jak napisales powyzej.

No to cieszę się że mogłem pomóc. Sam mam projekt z backendem w Django, tylko react.

PS: I odpowidaj na odpowiedzi w odpowiedziach, nie w komentarzach (jak na Stack Overflow ;)

2

@TomRiddle: Luz :D Czyli postawie sobie restowe api w Django z modelami odnosnie rozpisek a reszte klepne w Vue i tam bede sobie odpytywal Django.

1
ledi12 napisał(a):

@TomRiddle: Luz :D Czyli postawie sobie restowe api w Django z modelami odnosnie rozpisek a reszte klepne w Vue i tam bede sobie odpytywal Django.

Czy REST'owe to nie koniecznie. Możesz je ukształtować na REST, nie musisz. Ja bym teraz poszedł w GraphQL.

0

@ledi12: Jeśli Twoja stronka nie ma dużo interaktywnnych sekcji wówczas puszczanie danych po REST (a tym bardziej po GraphQL!) będzie przerostem formy nad treścią.

Samo dzielenie projektu na osobne pod-projekty ma sens jeśli masz 1) dość złożony projekt 2) backendowca i kogoś od frontu. Natomiast w sytuacji, gdy wszystko robisz sam podziały zabiorą Ci więcej czasu niż możesz przypuszczać, ostatecznie klient tego i tak nie widzi, a Pani z HR nie doceni.

2
ret napisał(a):

@ledi12: Jeśli Twoja stronka nie ma dużo interaktywnnych sekcji wówczas puszczanie danych po REST (a tym bardziej po GraphQL!) będzie przerostem formy nad treścią.

One question - why?

Dokładnie tak się robi w web-apkach Vue/React/Angular.

Samo dzielenie projektu na osobne pod-projekty ma sens jeśli masz 1) dość złożony projekt 2) backendowca i kogoś od frontu.

Again, why?

Im prostszy projekt tym to będzie mniej skomplikowane. Dla mnie, nawet dla najprostszej apki project Vue + backend w Django to najlepszy wybór.

Prostsze, byłoby chyba tylko pisanie widoków w template'ach, ale wtedy to nie jest wgl strona SPA, a autor taką chciał.

Natomiast w sytuacji, gdy wszystko robisz sam podziały zabiorą Ci więcej czasu niż możesz przypuszczać, ostatecznie klient tego i tak nie widzi, a Pani z HR nie doceni.

Agaaaain - why? Nie ma żadnych podziałów, po prostu robisz dwie apki - jedną webową we Vue, drugą backendową w django. Zajmie tyle samo czasu (a może nawet i mniej) na zrobienie ich, bo:

  1. Można je rozwijać niezależnie od siebie - np, jak jedna się buduje możesz kodzić drugą
  2. Błędy w jednej nie wpływają tak bardzo na drugą - np jak Ci leży backend/baza, to apka w Vue dalej działa
  3. Do Vue i do Django są CLI które pozwalają bardzo szybko postawić obie te apki. Jak masz dockera to nawet baze można postawić w pare minut.
  4. Większy podział warstw - czyt. bardziej maintainable.
ret napisał(a):

Skoro wolisz robić 3 razy dłużej, by następnie nikt nie używał projektu to nie mam pytań :-)

Ale za to za rok, dwa będzie pisał dużo lepsze apki. Hejtować każdy umie.

Jesli to jest rozwojowe to jutro idę z motyką na słońce :D

Chamsko. Widać że chłopak chce się uczyć.

3

@ret: Nie jestem swiezakiem w Django i webowce - Mam sporo duzych prywatnych projektow jak portale aukcyjne, sklepy online, czy system kina (rezerwacja biletow itp). Wszystko robione "from scratch" :P Jedyne co laczy moje projekty to wszystko jest oparte na jednym serwerze - Django. Moge stworzyc swoj nowy projekt na wzor poprzednich, ale niczego sie nie naucze, bo o czystym Django wiem juz wystaraczajaco wiele. Nigdy nie probowalem rozbijac projektu na dwa serwery, wiec jak najbardziej jest to dla mnie cos nowego + uzyje funkcjonalnosci Vue, ktorych wczesniej nie mialem potrzeby uzywac. Mozesz juz isc z ta motyka na slonce :D

1 użytkowników online, w tym zalogowanych: 0, gości: 1