Repository files navigation
Создан django-проект
Настроена раздача статических файлов из папки static в корне проекта
Создано приложение mainapp
В geekshop/urls.py добавлены URL для основных страниц
В mainapp/views.py созданы функции-обработчики для основных страниц
Подготовлены шаблоны для основных страниц
Организована динамическая работа со статикой и ссылками
Создан базовый шаблон и подшаблон меню
Добавлена работа с контекстом в шаблонах
Настроена работа с медиафайлами
Созданы модели и произведены миграции
Создан суперпользователь
Настроена админка для продуктов и категорий
Организована работа с моделью продукта в соответствующем контроллере и шаблоне
Добавлен файл requirements.txt
Аутентификация и регистрация пользователя
Создана собственная модель пользователя
Настроена аутентификация и вход пользователя
Настроена регистрация пользователя
Настроен выход пользователя
Организован просмотр и редактирование пользователем своего профиля
Пользователь + товар = корзина
Реализован механиз вывода товара по категориям
Реализована динамическая генерация меню по категориям и подсветка выбранной категории
Создано приложение корзины
Создана модель слота корзины
Реализованы механизмы добавления и удаления товара из корзины
Выведено количество различных товаров, лежащих в корзине (без учёта их количества)
Корзина + AJAX + декораторы
К модели слота корзины добавлено поле-метод cost
Выведено количество и цена товаров в корзине с помощью шаблонных тегов
Реализован механизм просмотра корзины
Реализована защита корзины методом @login_required
Реализовано редактирование корзины с помщью AJAX
Сделано горячее предложение в каталоге
Создано приложение adminapp
Реализован механизм CRUD для объектов товаров с помощью Class Based View.
Доступ к админке ограничен с помощью UserPassesTestMixin
Полезное: встроенная админка Django, ConfigParser, Debug Toolbar
Данные из settings перенесены в отдельный файл конфигурации
Проведена продвинутая настройка встроенной админки Django для продуктов и пользователей
Настроена django-debug-toolbar
С помощью select_related() оптимизированы запросы в базу данных при расчёте общей цены корзины
You can’t perform that action at this time.