【问题标题】:include text and variable in ValidationError在 ValidationError 中包含文本和变量
【发布时间】:2022-01-11 21:38:47
【问题描述】:

我在模型上使用此代码来检查用户是否上传了太大的图像

代码:

    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")

它只会显示首先出现的变量或字符串。我怎样才能同时包含两者

【问题讨论】:

  • f'Image {image} is too large'?
  • @WillemVanOnsem 谢谢!

标签: django django-models


【解决方案1】:

您可以使用字符串格式将图像的文本包含在字符串中,例如:

def validate_image(image):
    file_size = image.file.size
    if file_size > settings.MAX_UPLOAD_SIZE:
        raise ValidationError(f'Image {image} is too large')

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2013-11-08
    • 2021-11-10
    • 2013-07-05
    • 2013-01-20
    • 2018-01-31
    • 1970-01-01
    • 1970-01-01
    • 2021-10-15
    相关资源
    最近更新 更多