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

Этот коммит содержится в:
Глеб Иваницкий 2024-09-22 18:05:46 +03:00
родитель 64004e70d1
Коммит 8af63713e4

Просмотреть файл

@ -1,14 +1,29 @@
import os
from django.db.models import Model
from django.db.models import OneToOneField, ManyToManyField, CASCADE
from django.db.models import CharField, TextField, IntegerField, DecimalField, BooleanField, ImageField
def upload_to(path, /):
def wrapper(instance, filename):
return os.path.join(
path,
'%s.%s' % (
instance.pk,
filename.split('.')[-1],
),
)
return wrapper
class RoomImage(Model):
class Meta:
verbose_name_plural = 'Изображения комнат'
image = ImageField(
verbose_name='Изображение',
upload_to=upload_to('media/rooms/images'),
)
@ -18,6 +33,7 @@ class RoomPanorama(Model):
image = ImageField(
verbose_name='Изображение',
upload_to=upload_to('media/rooms/panoramas'),
)