Это Django-проект, реализующий API для управления пользователями, адресами, телефонами, документами и папками. Проект использует Django REST Framework для построения API и PostgreSQL для продакшн-конфигурации базы данных.
- 🧑💼 Пользователи: Возможность создавать, обновлять и удалять пользователей.
- 🏡 Адреса: API для управления адресами пользователей.
- 📞 Телефоны: Управление телефонами пользователей через API.
- 📂 Документы и папки: Возможность работы с документами и папками, включая создание, обновление и удаление.
- 🔑 Аутентификация: Использование аутентификации на основе токенов для защищенного доступа.
- 🗄 База данных: SQLite для разработки и PostgreSQL для продакшена.
- Python 3.12+
- Django 5.1.1
- PostgreSQL (для продакшн)
-
Клонирование репозитория:
git clone https://github.com/5ekastanx/DocuManager.git cd DocuManager -
Создание виртуального окружения:
python -m venv venv source venv/bin/activate # для Linux/Mac venv\Scripts\activate # для Windows
-
Установка зависимостей:
pip install -r requirements.txt
-
Применение миграций:
python manage.py migrate
-
Запуск сервера разработки:
python manage.py runserver
apps/accounts/: Управление пользователями, адресами и телефонами.apps/contents/: Управление документами и папками.apps/graphenes/: Модели и схемы для работы с GraphQL.conf/: Конфигурационные файлы, включая настройки базы данных.media/: Каталог для загруженных файлов и медиа.templates/: Шаблоны HTML для пользовательского интерфейса.
POST /api/v1/users/: Создать нового пользователя.GET /api/v1/users/{id}/: Получить информацию о пользователе.PUT /api/v1/users/{id}/: Обновить данные пользователя.DELETE /api/v1/users/{id}/: Удалить пользователя.
POST /api/v1/addresses/: Создать новый адрес.GET /api/v1/addresses/{id}/: Получить информацию об адресе.PUT /api/v1/addresses/{id}/: Обновить адрес.DELETE /api/v1/addresses/{id}/: Удалить адрес.
POST /api/v1/phones/: Добавить новый телефон.GET /api/v1/phones/{id}/: Получить информацию о телефоне.PUT /api/v1/phones/{id}/: Обновить данные телефона.DELETE /api/v1/phones/{id}/: Удалить телефон.
-
Документы:
GET /api/v1/documents/: Получить список документов.POST /api/v1/documents/: Создать новый документ.GET /api/v1/documents/{id}/: Получить данные о документе.PUT /api/v1/documents/{id}/: Обновить документ.DELETE /api/v1/documents/{id}/: Удалить документ.
-
Папки:
GET /api/v1/folders/: Получить список папок.POST /api/v1/folders/: Создать новую папку.GET /api/v1/folders/{id}/: Получить данные о папке.PUT /api/v1/folders/{id}/: Обновить папку.DELETE /api/v1/folders/{id}/: Удалить папку.
- Backend: Django, Django REST Framework
- Database: SQLite (для разработки), PostgreSQL (для продакшена)
- Authentication: Токеновая аутентификация
Для вкладов создавайте pull requests. Убедитесь, что код проходит все тесты и соответствует общему стилю проекта.
Проект распространяется по лицензии MIT.
Удачи в работе с проектом! 🚀