-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathdraft of features
75 lines (72 loc) · 2.82 KB
/
draft of features
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
BestBooks - aplikacja z najlepszymi książkami
co my chcemy właściwie zrobić?
1. środowsiko wirtualne
2. instalacja django
3. stworzenie projektu (test: odpalenie pustego projetku: ./manage.py runserver 127.0.0.1:8000)
4. stworzenie aplikacji
5. stworzenie modelu, np. Author
6. podłączenie bazy danych (SQLight)
7. makemigrations & migrate
8. django model admin dla modelu Author
9. stworzenie superusera (createsuperuser)
10. dodanie nowego autora z panelu admina
11. to samo co z Author ale dla Book
12. pierwszy widok: lista wszystkich Authors
dwa modele:
1. Author
2. Book
Dodawanie kolejnych instancji Book i Author przez panel admina
widoki:
1. Strona "Wszyscy autorzy"
- wylistowani wszyscy autorzy, każdy z nich jest linkiem do własnej strony "Autor"
2. Strona "Autor" z listą wszystkich jego/jej książek
- szczegółowe informacje o autorce/autorze
- lista wszystkich książek, każda będąca linkiem do strony "Książka"
3. Strona "Książka" ze szczegółowymi informacjami o książce
*Dodatkowe:
1. Strona głowna
- 3 ostatnio dodanych autorów (każdy jest linkiem)
- 3 ostatnio dodane książki (każda jest linkiem)
Zajęcia 3
Formularze i widoki klasowe/generyczne
Czyli jak zwykły user może dodać coś do bazy oraz jak pisać mniej kodu
1. Możliwość komentowania książek
- nowy model do trzymania komentarza
- formularz do wpisywania komentarza (osobny widok)
- wszystkie komentarze widoczne na stronie danej książki
2. Możliwość komentowania autora
j/w
Widoki generyczne, czyli Django jako fully automated luxury kombajn
CRUD
1. Przepiszmy widok "Wszyscy autorzy" na widok klasowy
2. Przepiszmy widok "Autor" na widok klasowy
3. Przepiszmy widok "Książka" na widok klasowy
*4. Przepiszmy widok "Strona główna" na widok klasowy
*5. Przepiszmy widok "Dodaj komentarz" na widok klasowy
Zajecia 4
Wielka synteza, czyli formularze jako klasy
Formularz na podstawie klasy
zadanie:
Widok do wysyłki maila do autora na podstawie formualrza opartego na klasie
1. user może wysłać maila do wybrangeo autora
2. mail autora to jego {first_name}_{last_name}@bestbooks.pl
3, po wysłaniu maila user widzi stronę o trście "Twój mail został wysłany"
EMAIL_BACKEND = 'django.core.mail.backends.console.EmailBackend'
send_mail()
Zajęcia 5
Kończymy to co poprzednio
logowanie/rejestracja/restrykcja treści
cel: tylko zalogowany user może wysłać maila do autora
do domu:
1. rejestracja usera (login, maila, dwa razy hasło; *sprawdzamy czy dwa hasła są zgodne)
2. wylogowywanie (tylko dla zalogowanych)
3. tylko niezalogowany user może się zalogować
Zajęcia 6
Formularz do wyszukiwania i metoda filter()
lookupy (gte, year, contains)
do domu:
Zrobić wyszukiwarkę do BookLists (po polach autora, ale też po własnych)
Zajęcia 7
Niech na każdej stronie będzie aktualna prognoza pogody dla Warszawy
Zajęcia 8
Testy!