Wpis z mikrobloga

via Wykop Mobilny (Android)
  • 0
Mirki z #programista15k i #django #python mam pytanie :)

Czy aby template widzial zmienna lub obiekt to musze ja dodac do return render? Wedlug ksiazki, ktora przerabiam nie. Ale dopiero jak umieszcze ja w return render i zdefiniuje w kazdym warunku to dziala to jak chce :/
  • 12
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

via Wykop Mobilny (Android)
  • 0
@michael93pl: próbuje to rozkminic, ale jak dodaje do contextu to przy warunku gdzie dany obiekt nie jest tworzony to wysypuje sie twierdzac ze zmienna nie jest przypisana. Ok moge ja zdefiniowac w innym warunku ale bedzie to mialo taki sam efekt jak wczesniej zrobilem. W sumie to niczym sie nie rozni. Skoro aby template widzial to musze to dodac a skoro dodac to i nadac jakas wartosc to "if cos"
  • Odpowiedz
via Wykop Mobilny (Android)
  • 0
@michael93pl: wkleilem interrsujace fragmenty.

Pastebin.com/aLhiQyWL

Podczas metody POST jest dodawany komentarz i tworzony obiekt newcomment

Template sprawdza czy istnieje new
comment i jesli tak to wyswietla ze dodano wpis. Teraz dziala to tak ze po wyslaniu komentarza pola form dalej sa wypelnione i mozna klikac i dodawac do woli dublowac posty. Jesli dam new_comment != "0" w template a w view w else ustawie jego wartosc na 0 i
  • Odpowiedz
@takelbery nie rozpisze Ci tego w tramwaju ale poczytaj i tym jak działają requesty,
1) getujesz url, w widoku, ktory go obsluguje możesz wyświetlić form do uzupełnienia i mieć dostęp do wszystkiego, co przekażesz w contextu, czyli np listy obiektów, które chcesz wyświetlić, czy co tam potrzebujesz na danej stronie.
2) kiedy obslugujesz post to przyjmujesz jakieś dane, zapewne walidujesz ich poprawność np w formie, jeżeli jest poprawny to dalej coś
  • Odpowiedz
via Wykop Mobilny (Android)
  • 0
@michael93pl: ok, dzieki :) przerabiam ksiazke Django 2 wyd. 2 Antonio Mele i trafilem na taka przeszkode :) posiedze jeszcze nad tym. Cala funkcjonalnosc jest zachowana poza tym szczegolem.
  • Odpowiedz
@takelbery serio polecam ten tutorial, jest napisany bardzo prostym językiem i masz tam cala wiedzę, która będzie Ci potrzebna do stworzenia podobnych stronek, to samo na YT jest tego sporo
  • Odpowiedz
via Wykop Mobilny (Android)
  • 0
@michael93pl: Dzieki, hmm dobrze rozumiem ze nawet podczas POST musze definiowac zmienne w context dla szablonu?

Skrypt wprost z ksiazki dziala, wpisy dodaja sie do bazy etc. Tylko template nie reaguje. Dziwi mnie ze moze byc taki blad w ksiazce. Jesli dobrze czytam manuale to przy post tez wystepuje context. W takim razie przeedytowalem skrypt tak i dziala tak jak autor zakladal.

pastebin.com/uRTLD1pY

Co o tym myslisz?
  • Odpowiedz
@takelbery: Zobacz:

Kiedy wchodzisz na jakiś url w przeglądarce to z zasady wysyłasz tam GET request --> chcesz pobrać jakieś dane
wpisujesz url, django wybiera który widok ma się wyświetlić i jakie dane ma tam przesłać - np (form + context).

Kiedy wysyłasz POST request na server, to chcesz dodać jakieś dane, nie oznacza to, że zostaną one wyświetlone w jakikolwiek sposób podczas POST request, nie od tego on służy. Nie chodzi o
  • Odpowiedz
via Wykop Mobilny (Android)
  • 0
@michael93pl: Jeszcze raz dzieki za wyjasnienia. Z teoria POST i GET raczej problemu nie mam :) w Twoim przykladzie upewniles mnie ze trzeba dodac obiekt new_post do context aby szablon go widzial. Ja wkleilem Ci tylko funkcjonalnosc dodania posta jesli request jest typu POST ktora znajduje sie w widoku calego posta. W calosci to wyglada tak ze mam strone ktora wyswietla liste komentarzy pod danym postem i formularz. POST i
  • Odpowiedz