mod: django-filer настройка (01)
This commit is contained in:
@@ -1,4 +1,5 @@
|
||||
from django.apps import AppConfig
|
||||
from lpon_site.settings import DEBUG
|
||||
|
||||
|
||||
class FrontendConfig(AppConfig):
|
||||
@@ -20,7 +21,69 @@ class FrontendConfig(AppConfig):
|
||||
# import myapp.signals
|
||||
|
||||
|
||||
# Добавляем кастомный конфиг для filer, чтобы переименовать verbose_name
|
||||
# Добавляем кастомный конфиг для filer, чтобы переименовать verbose_name и добавить конфиги
|
||||
class CustomFilerConfig(AppConfig):
|
||||
name = 'filer'
|
||||
verbose_name = 'Медиафайлы' # Напишите здесь желаемое имя вкладки
|
||||
verbose_name = 'Медиафайлы' # Переименование вкладки в админке
|
||||
|
||||
# ========================================================================
|
||||
# Конфигурация Django-Filer (для загрузки файлов через админку)
|
||||
# ========================================================================
|
||||
FILER_ENABLE_PERMISSIONS = DEBUG # В production установить True для ограничения доступа
|
||||
|
||||
# Разрешенные расширения файлов для FilerImageField
|
||||
FILER_WHITELIST_FOR_PATH_ACCESS = (
|
||||
# ПОДУМАТЬ: поддержка '.heic' требует дополнительных пакетов (и разных для прода и дева) + обработчик сигналов
|
||||
# для автоматической конвертации .heic в .webp при загрузке. Пока отключаем, и оставим на будущее
|
||||
'.jpg', '.jpeg', '.png', '.gif', '.svg', '.webp', # Изображения
|
||||
'.doc', '.docx', '.pdf', '.txt', '.xls', '.xlsx', '.csv', # Документы
|
||||
)
|
||||
|
||||
# Максимальный размер загружаемого файла (в байтах): 100 MB
|
||||
FILER_MAX_UPLOAD_SIZE = 100 * 1024 * 1024
|
||||
|
||||
# MIME-типы разрешенные для загрузки
|
||||
FILER_MIME_TYPE_WHITELIST = (
|
||||
'image/jpeg',
|
||||
'image/png',
|
||||
'image/gif',
|
||||
'image/svg+xml',
|
||||
'image/webp',
|
||||
'application/pdf',
|
||||
'application/msword', # .doc
|
||||
'application/vnd.openxmlformats-officedocument.wordprocessingml.document', # .docx
|
||||
'text/plain',
|
||||
'application/vnd.ms-excel', # .xls
|
||||
'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet', # .xlsx
|
||||
'text/csv',
|
||||
)
|
||||
|
||||
# Tiny Image Specifications для автоматических вариантов изображений
|
||||
THUMBNAIL_ALIASES = {
|
||||
'': {
|
||||
# Для галерей и витрин
|
||||
# Кратные 16х16 картинки для ускорения GPU-рендера браузеров, retina-дисплеев и "копеечная" экономии на сервере
|
||||
'admin_thumbnail': {'size': (64, 64), 'crop': True}, # Для админки
|
||||
'small': {'size': (256, 256), 'crop': True}, # Квадрат 256x256 для миниатюр
|
||||
'medium': {'size': (512, 512), 'crop': True}, # Квадрат 512x512 для просмотра
|
||||
'large': {'size': (1024, 1024), 'crop': 'smart'}, # Большое изображение с умным crop
|
||||
},
|
||||
}
|
||||
|
||||
# Форматы сохранения для thumbnail'ов (миниатюр)
|
||||
THUMBNAIL_PRESERVE_FORMAT = False # Не сохранять оригинальный формат для thumbnails
|
||||
THUMBNAIL_FORMAT = 'WEBP' # Конвертировать все thumbnails в WebP
|
||||
THUMBNAIL_WEBP_QUALITY = 80 # Качество WebP (достаточно 75-85 для thumbnails)
|
||||
|
||||
# Интерпретатор для обработки изображений
|
||||
THUMBNAIL_ENGINE = 'easy_thumbnails.engines.pil_engine.PilEngine'
|
||||
|
||||
# Качество JPEG при сжатии (0-100, по умолчанию 85)
|
||||
# THUMBNAIL_QUALITY = 85
|
||||
|
||||
# Источник кеша для миниатюр
|
||||
THUMBNAIL_DEBUG = DEBUG # Показывать ошибки генерирования миниатюр в debug режиме
|
||||
|
||||
# Валидаторы файлов (пусто = без ограничений)
|
||||
FILE_VALIDATORS = {}
|
||||
|
||||
|
||||
@@ -161,48 +161,4 @@ STATICFILES_DIRS = [PUBLIC_DIR.joinpath('static')]
|
||||
STATIC_ROOT = PUBLIC_DIR.joinpath('staticfiles')
|
||||
|
||||
|
||||
# ============================================================================
|
||||
# Django-Filer Configuration (для загрузки файлов через админку)
|
||||
# ============================================================================
|
||||
# django-filer использует easy_thumbnails для управления вариантами изображений
|
||||
# Все файлы хранятся в MEDIA_ROOT/filer_public/ и MEDIA_ROOT/filer_private/
|
||||
|
||||
FILER_ENABLE_PERMISSIONS = DEBUG # В production установить True для ограничения доступа
|
||||
|
||||
# Разрешенные расширения файлов для FilerImageField
|
||||
FILER_WHITELIST_FOR_PATH_ACCESS = (
|
||||
# ПОДУМАТЬ: поддержка '.heic' требует дополнительных пакетов (и разных для прода и дева) + обработчик сигналов
|
||||
# для автоматической конвертации .heic в .webp при загрузке. Пока отключаем, и оставим на будущее
|
||||
'.jpg', '.jpeg', '.png', '.gif', '.svg', '.webp', # Изображения
|
||||
'.doc', '.docx', '.pdf', '.txt', '.xls', '.xlsx', '.csv', # Документы
|
||||
)
|
||||
|
||||
# Максимальный размер загружаемого файла (в байтах): 100 MB
|
||||
FILER_MAX_UPLOAD_SIZE = 100 * 1024 * 1024
|
||||
|
||||
# Tiny Image Specifications для автоматических вариантов изображений
|
||||
THUMBNAIL_ALIASES = {
|
||||
'': {
|
||||
# Для галерей и витрин
|
||||
# Кратные 16х16 картинки для ускорения GPU-рендера браузеров, retina-дисплеев и "копеечная" экономии на сервере
|
||||
'admin_thumbnail': {'size': (64, 64), 'crop': True}, # Для админки
|
||||
'small': {'size': (256, 256), 'crop': True}, # Квадрат 256x256 для миниатюр
|
||||
'medium': {'size': (512, 512), 'crop': True}, # Квадрат 512x512 для просмотра
|
||||
'large': {'size': (1024, 1024), 'crop': 'smart'}, # Большое изображение с умным crop
|
||||
},
|
||||
}
|
||||
|
||||
# Форматы сохранения для thumbnail'ов (миниатюр)
|
||||
THUMBNAIL_PRESERVE_FORMAT = False # Не сохранять оригинальный формат для thumbnails
|
||||
THUMBNAIL_FORMAT = 'WEBP' # Конвертировать все thumbnails в WebP
|
||||
THUMBNAIL_WEBP_QUALITY = 80 # Качество WebP (достаточно 75-85 для thumbnails)
|
||||
|
||||
# Интерпретатор для обработки изображений
|
||||
THUMBNAIL_ENGINE = 'easy_thumbnails.engines.pil_engine.PilEngine'
|
||||
|
||||
# Качество JPEG при сжатии (0-100, по умолчанию 85)
|
||||
# THUMBNAIL_QUALITY = 85
|
||||
|
||||
# Источник кеша для миниатюр
|
||||
THUMBNAIL_DEBUG = DEBUG # Показывать ошибки генерирования миниатюр в debug режиме
|
||||
|
||||
|
||||
Reference in New Issue
Block a user