https://github.com/macket/geekbrains_django
https://github.com/macket/geekbrains_django
Last synced: 4 months ago
JSON representation
- Host: GitHub
- URL: https://github.com/macket/geekbrains_django
- Owner: Macket
- Created: 2019-06-05T14:31:57.000Z (about 7 years ago)
- Default Branch: master
- Last Pushed: 2023-02-11T00:59:32.000Z (over 3 years ago)
- Last Synced: 2025-08-26T03:45:01.907Z (11 months ago)
- Language: Python
- Size: 229 KB
- Stars: 2
- Watchers: 1
- Forks: 11
- Open Issues: 6
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Geekbrains django
## Оглавление
- [Урок 1. Знакомство с фрэймворком](#Урок-1)
- [Урок 2. Шаблон + Контекст = html](#Урок-2)
- [Урок 3. Модели + ORM = данные](#Урок-3)
- [Урок 4. Аутентификация и регистрация пользователя](#Урок-4)
- [Урок 5. Пользователь + товар = корзина](#Урок-5)
- [Урок 6. Корзина + AJAX + декораторы](#Урок-6)
- [Урок 7. Собственная админка](#Урок-7)
- [Урок 8. Полезное: встроенная админка Django, ConfigParser, Debug Toolbar](#Урок-8)
## Урок 1
### Знакомство с фрэймворком
- Создан django-проект
- Настроена раздача статических файлов из папки static в корне проекта
- Создано приложение mainapp
- В geekshop/urls.py добавлены URL для основных страниц
- В mainapp/views.py созданы функции-обработчики для основных страниц
- Подготовлены шаблоны для основных страниц
## Урок 2
### Шаблон + Контекст = html
- Организована динамическая работа со статикой и ссылками
- Создан базовый шаблон и подшаблон меню
- Добавлена работа с контекстом в шаблонах
## Урок 3
### Модели + ORM = данные
- Настроена работа с медиафайлами
- Созданы модели и произведены миграции
- Создан суперпользователь
- Настроена админка для продуктов и категорий
- Организована работа с моделью продукта в соответствующем контроллере и шаблоне
- Добавлен файл requirements.txt
## Урок 4
### Аутентификация и регистрация пользователя
- Создана собственная модель пользователя
- Настроена аутентификация и вход пользователя
- Настроена регистрация пользователя
- Настроен выход пользователя
- Организован просмотр и редактирование пользователем своего профиля
## Урок 5
### Пользователь + товар = корзина
- Реализован механиз вывода товара по категориям
- Реализована динамическая генерация меню по категориям и подсветка выбранной категории
- Создано приложение корзины
- Создана модель слота корзины
- Реализованы механизмы добавления и удаления товара из корзины
- Выведено количество различных товаров, лежащих в корзине (без учёта их количества)
## Урок 6
### Корзина + AJAX + декораторы
- К модели слота корзины добавлено поле-метод cost
- Выведено количество и цена товаров в корзине с помощью шаблонных тегов
- Реализован механизм просмотра корзины
- Реализована защита корзины методом @login_required
- Реализовано редактирование корзины с помщью AJAX
- Сделано горячее предложение в каталоге
## Урок 7
### Собственная админка
- Создано приложение adminapp
- Реализован механизм CRUD для объектов товаров с помощью Class Based View.
- Доступ к админке ограничен с помощью UserPassesTestMixin
## Урок 8
### Полезное: встроенная админка Django, ConfigParser, Debug Toolbar
- Данные из settings перенесены в отдельный файл конфигурации
- Проведена продвинутая настройка встроенной админки Django для продуктов и пользователей
- Настроена django-debug-toolbar
- С помощью select_related() оптимизированы запросы в базу данных при расчёте общей цены корзины