Skip to content

sweetslav/django

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

21 Commits
 
 
 
 

Repository files navigation

Проект "django"

Этот проект представляет собой универсальную каталожную платформу, разработанную на Django, предназначенную для систематизации информации об известных личностях.

Описание проекта

Проект разработан в первую очередь для практического применения полученных знаний и навыков в следующих областях:

  • Контейнеризация и архитектура: Использование Docker для создания изолированных контейнеров, обеспечивающих легкость развертывания и масштабируемость приложения.
  • База данных: Интеграция PostgreSQL для хранения данных о пользователях, постах и изображениях, обеспечивающая эффективное управление информацией.
  • Разработка Django приложения: Создание платформы, позволяющей пользователям регистрироваться, авторизовываться, восстанавливать пароли, создавать посты с изображениями и тегами.

Функциональность проекта

Проект предлагает следующие ключевые возможности:

  • Регистрация и аутентификация пользователей: Безопасная и удобная система управления доступом.
  • Управление постами: Возможность создания, редактирования и удаления постов с добавлением изображений и тегов.
  • Интерактивный интерфейс: Использование Django Debug Toolbar и Django Extensions для удобной разработки и отладки.

Используемые инструменты и технологии

Проект использует передовые технологии и инструменты для обеспечения высокого уровня профессионализма:

  • Docker: Контейнеризация приложения для облегчения развертывания и управления окружением.
  • PostgreSQL: Мощная реляционная база данных для надежного хранения и управления данными.
  • pip-tools: Управление зависимостями Python для гибкости и безопасности в разработке.
  • ipython: Интерактивная среда разработки для быстрой отладки и анализа данных.
  • Другие инструменты: Django Debug Toolbar для профилирования приложения и Django Extensions для дополнительных функций разработки.

Возможности использования

Проект можно доработать и адаптировать для различных целей:

  • Личный сайт: Идеальное решение для создания персонального веб-профиля с возможностью добавления контента и управления им.
  • Блог: Платформа поддерживает создание и публикацию постов с изображениями и тегами, идеально подходит для ведения блога.
  • Справочный каталог: Возможность добавления информации о различных личностях или предметах, обогащенная мультимедийным контентом.

Установка и развертывание

Установка

  1. Клонировать репозиторий:

    git clone <url-репозитория>
    cd sitewomen
    
  2. Установить зависимости:

    pip install -r requirements.txt
    
  3. Настроить переменные окружения:

Создайте файл .env на основе .env.example и заполните необходимыми значениями.

  1. Применить миграции:

    python manage.py migrate
    

Развертывание с использованием Docker

  1. Для развертывания приложения с использованием Docker выполните следующие шаги:

  2. Установите Docker и Docker Compose, если они не установлены.

  3. Соберите Docker-образы и запустите контейнеры:

    docker-compose up -d --build
    
  4. Примените миграции в запущенном контейнере:

    docker-compose exec web python manage.py migrate
    
  5. Создайте суперпользователя (необходимо только при первом запуске):

    docker-compose exec web python manage.py createsuperuser
    
  6. Приложение будет доступно по адресу http://localhost:8000.

Структура проекта

  • djvenv: Виртуальное окружение Python.

    • library root: Корневая директория библиотеки.
  • sitewomen: Основная директория проекта Django.

    • media: Директория для хранения медиафайлов.

      • photos: Фотографии.
      • uploads_model: Загруженные файлы модели.
    • sitewomen: Главная директория проекта Django.

      • __init__.py: Файл инициализации проекта.
      • asgi.py: ASGI конфигурация для асинхронных HTTP серверов.
      • settings.py: Основные настройки проекта Django.
      • urls.py: Маршрутизация URL приложения.
      • wsgi.py: WSGI конфигурация для веб-серверов.
    • static: Директория для статических файлов проекта.

      • css: Каскадные таблицы стилей.
    • staticfiles: Статические файлы, собранные Django.

      • admin: Файлы статики для административного интерфейса.
      • debug_toolbar: Файлы статики для Django Debug Toolbar.
      • django_extensions: Файлы статики для Django Extensions.
      • women: Файлы статики для приложения "women".
    • templates: HTML-шаблоны проекта.

      • admin: Шаблоны для административного интерфейса.
      • base.html: Основной шаблон проекта.
    • users: Приложение для управления пользователями.

      • migrations: Миграции базы данных.
      • templates: HTML-шаблоны приложения.
      • __init__.py: Файл инициализации приложения.
      • admin.py: Настройки административного интерфейса.
      • apps.py: Конфигурация приложения.
      • authentication.py: Модуль аутентификации.
      • context_processors.py: Процессоры контекста.
      • forms.py: Формы пользователя.
      • models.py: Модели данных.
      • tests.py: Тесты приложения.
      • urls.py: URL-маршрутизация приложения.
      • views.py: Представления приложения.
    • women: Приложение для работы с данными.

      • migrations: Миграции базы данных.
      • static: Статические файлы приложения.
      • templates: HTML-шаблоны приложения.
      • templatetags: Теги шаблонов Django.
      • __init__.py: Файл инициализации приложения.
      • admin.py: Настройки административного интерфейса.
      • apps.py: Конфигурация приложения.
      • converters.py: Конвертеры данных.
      • forms.py: Формы приложения.
      • models.py: Модели данных.
      • tests.py: Тесты приложения.
      • urls.py: URL-маршрутизация приложения.
      • utils.py: Вспомогательные утилиты приложения.
      • views.py: Представления приложения.
  • .env: Файл для хранения переменных окружения.

  • .env.example: Пример файла переменных окружения.

  • .gitignore: Файл для игнорирования файлов Git.

  • datadump.json: JSON файл с данными.

  • docker-compose.yml: Конфигурация Docker Compose.

  • Dockerfile: Файл для сборки Docker образа.

  • manage.py: Файл управления Django.

  • requirements.in: Входной файл зависимостей pip-tools.

  • requirements.txt: Сгенерированный файл зависимостей Python.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published