Files
we_pro_dock/BACKEND/MEDIA.md
2024-05-14 11:39:33 +03:00

2.6 KiB
Raw Blame History

Модель статьи

  1. TimeStampedModel:
    • Абстрактная базовая модель для добавления автора, полей времени создания и изменения к другим моделям.
    • created_at: Дата и время создания объекта.
    • updated_at: Дата и время последнего обновления объекта.
    • author: Автор объекта.
    • file_name: Имя файла объекта.
    • Метод save: Переопределен для автоматической установки даты создания и обновления.
    • Метод generate_file_url: Генерирует URL файла.
  2. Images:
    • Модель файлов изображений.
    • file: Поле для загрузки изображения.
    • history: Поле для хранения истории изменений.
    • Метод save: Дополнительно устанавливает имя файла с префиксом "Image_".
    • Метод clean: Проверяет допустимость формата изображения.
  3. Videos:
    • Модель файлов видео.
    • file: Поле для загрузки видео.
    • history: Поле для хранения истории изменений.
    • Метод save: Дополнительно устанавливает имя файла с префиксом "Video_".
  4. OtherFiles:
    • Модель файлов всех типов документов.
    • file: Поле для загрузки документа.
    • history: Поле для хранения истории изменений.
    • Метод save: Дополнительно устанавливает имя файла с префиксом "Document_".

Валидатор данных

  1. validate_max_file_size:
    • Проверяет, что размер загружаемого файла не превышает максимально допустимый размер.
    • value: Параметр, представляющий объект файла.
    • max_size: Максимальный размер файла в байтах (здесь установлен на 200 МБ).
    • Если размер файла больше max_size, вызывается исключение ValidationError с соответствующим сообщением об ошибке.

Сериализатор

Маршрутизатор

Контроллер