Включить текст и переменную в ValidationError
Я использую этот код в модели, чтобы проверить, загружают ли пользователи слишком большие изображения
код:
def validate_image(image):
file_size = image.file.size
test = 'whoop'
if file_size > settings.MAX_UPLOAD_SIZE:
raise ValidationError("image too large")
image = models.ImageField(default='default.jpg', upload_to=path_and_rename, validators=[validate_image])
однако я хочу включить имя нарушающего файла, если я использую
raise ValidationError(image)
он отображает имя файла, но если я пытаюсь включить некоторый текст
raise ValidationError(image, "is too large")
он будет отображать только то, что стоит на первом месте, либо переменную, либо строку. Как я могу включить оба
Вы можете использовать форматирование строки, чтобы включить текст изображения в строку, например:
def validate_image(image):
file_size = image.file.size
if file_size > settings.MAX_UPLOAD_SIZE:
raise ValidationError(f'Image {image} is too large')