django-app-recordacion
Описание
Языки
- Python39%
- HTML25,5%
- CSS24,9%
- Shell8,5%
- Dockerfile2,1%
Recordacion
Recordacion - это веб-приложение на основе Django для управления и обмена записями. Пользователи могут добавлять свои записи с изображениями и описаниями, а администраторы могут одобрять их для публичного просмотра.

Настройка AI инструментов
AI промпты для создания django APP
Возможности
- Удобное добавление записей с изображениями
- Система одобрения администратором для модерации записей
- Поддержка нескольких изображений для одной записи
- Превью-изображения для записей
- Автоматическое отслеживание временных меток
- Интерфейс администратора Django для управления записями
Используемые технологии
- Django 5.2.7
- Python 3.13
- SQLite (база данных)
Структура проекта
recordacion/
├── recordacion/ # Основные настройки проекта Django
│ ├── __init__.py
│ ├── asgi.py
│ ├── settings.py
│ ├── urls.py
│ └── wsgi.py
├── records/ # Приложение записей
│ ├── management/
│ │ └── commands/
│ │ └── create_admin_user.py
│ ├── migrations/
│ ├── __init__.py
│ ├── admin.py
│ ├── apps.py
│ ├── models.py
│ ├── tests.py
│ └── views.py
├── manage.py
├── requirements.txt
└── README.md
Инструкции по настройке
1. Клонируйте репозиторий и перейдите в директорию проекта
2. Создайте и активируйте виртуальное окружение
3. Установите зависимости
4. Запустите миграции базы данных
5. Заполните базу данных
5.1 Создайте администратора
Это создаст суперпользователя с:
- Имя пользователя: admin
- Пароль: admin
- Email: admin@example.com
5.2 Заполните записи
Заполняет базу данных начальными записями из :
Эта команда:
- Читает данные из prompts/init-data/data.json
- Создаёт объекты RecordEntry с заголовками, описаниями и изображениями
- Пропускает записи, которые уже существуют с таким же заголовком
- Помечает начальные записи как одобренные
6. Запустите сервер разработки
Приложение будет доступно по адресу
7. Доступ к интерфейсу администратора
Перейдите по адресу и войдите с учётными данными администратора, созданными на шаге 5.
Настройка Docker
Быстрый запуск с Docker
Соберите и запустите приложение используя Docker:
Приложение будет доступно по адресу
Детали конфигурации Docker
Настройка Docker включает:
- Базовый образ:
(официальный образ Python)python:3.13.9-bookworm - Непривилегированный пользователь: Запускается от пользователя
с UID 1000 для безопасностиdjango - База данных: База данных SQLite хранится в директории ./db
- Медиа файлы: Хранятся в директории ./media
- Автоматическая инициализация:
- Запускает миграции базы данных
- Создаёт пользователя администратора (имя:
, пароль:admin)admin - Заполняет начальные записи из prompts/init-data/data.json
- Статические файлы: Автоматически собираются во время сборки
Переменные окружения
: Используется для настройки разрешённых хостов в Cloud.ru Container AppsCONTAINER_NAME
Модели
RecordEntry
Основная модель для хранения записей со следующими полями:
: Заголовок записи (CharField)title: Подробное описание (TextField)description: Превью-изображение (ImageField)preview_image: Несколько изображений связанных с записью (ManyToManyField)images: Автоматически генерируемая временная метка созданияcreated_at: Автоматически генерируемая временная метка обновленияupdated_at: Статус одобрения (BooleanField)is_approved: Пользователь администратор, который одобрил запись (ForeignKey к User)approved_by
RecordImage
Модель для хранения отдельных изображений, которые могут быть связаны с несколькими записями.
Заметки по разработке
- Медиа файлы хранятся в директории media/
- Статические файлы обслуживаются из директории static/
- Проект использует SQLite для разработки (может быть настроен для продакшн баз данных)
- Все временные метки обрабатываются автоматически Django
- Загрузка изображений настроена для работы с системой обработки медиа Django