13
Foydalanuvchilarni boshqarish: Identifikatsiya, autentifikatsiya va avtorizatsiya. Token, session va JWT
Kutubxonaga hamma kirib ketaversa, kitoblarni kim yozganini bilmaymiz. Bugun E-Library ga ro'yxatdan o'tish va kirish tizimini qo'shamiz.
Haftada 3 ta dars. Slaydlarni oching va darsning o'quvchi sahifasida qo'shimcha ma'lumot hamda topshiriqlarni toping.
Kutubxonaga hamma kirib ketaversa, kitoblarni kim yozganini bilmaymiz. Bugun E-Library ga ro'yxatdan o'tish va kirish tizimini qo'shamiz.
Kitob qo'shish, ko'rish, tuzatish, o'chirish: har bir ilovaning yuragi shu to'rt amal. Bugun E-Library ga to'liq kitoblar CRUD sini qo'shamiz.
Kutubxonada 10 000 kitob bo'lsa, foydalanuvchi bittasini topishi kerak. Bugun ro'yxatni filtrlash, qidirish, tartiblash va sahifalashni o'rganamiz.
Ushbu haftada o'tilgan darslar bo'yicha uyga vazifalar ro'yxati:
User modeli, UserCreate va UserRead sxemalarini yozing va alembic revision --autogenerate -m "users" bilan migratsiya yarating./auth/register, /auth/login va /auth/me endpointlarini yozing; Swagger da Authorize bilan sinab, skrinshot oling.get_current_admin dependency sini yozing va admin bo'lmagan foydalanuvchi uchun 403 qaytishini tekshiring.Book modeli, BookCreate, BookUpdate, BookRead sxemalarini yozing va migratsiya yarating.POST, GET (ro'yxat va bitta), PATCH, DELETE endpointlarini yozing; boshqa foydalanuvchi uchun 403 va yo'q id uchun 404 qaytishini tekshiring.pages=-5 yuborib 422 javobini izohlang.GET /books ga author, min_pages va published_year filtrlarini qo'shing; Swagger da 3 ta kombinatsiyani sinang.q qidiruvini (sarlavha yoki muallif) va ruxsat etilgan sort ni qo'shing; noto'g'ri sort uchun 400 qaytishini tekshiring.limit/offset va BookPage (items, total, limit, offset) ni qo'shing; 3 sahifani ketma-ket oling va natijani izohlang.