繁体   English   中英

Django / Model 图像字段要求提供默认图像

[英]Django / Model image field asks for default image

我不想在 Django 中为我的 model 添加默认图像。 但是当我从 model 中删除默认图像时,它说图像属性没有与之关联的文件。 当用户不添加图像时,我应该如何解决它不会要求图像?

class MainPost(models.Model):
    title = models.CharField(max_length = 50,verbose_name= ('Başlık'))
    content = models.TextField(verbose_name= ('Yazı'))
    date_posted = models.DateTimeField(default=timezone.now)
    image = models.ImageField(default='profile_pics/default.jpg',upload_to = 'images',blank=True,null=True,verbose_name = ('Resim'))
    author = models.ForeignKey(User,on_delete=models.CASCADE)

    def __str__(self):
        return self.title

    def save(self,*args, **kwargs):
        super(MainPost,self).save(*args,**kwargs)

        img = Image.open(self.image.path)

        if img.height > 500 or img.width > 500:
            output_size = (500,500)
            img.thumbnail(output_size)
            img.save(self.image.path)

    def get_absolute_url(self):
        return reverse('comment', kwargs={'pk':self.pk})

我猜您在manage.py makemigrations manage.py migrate之间缺少一步,但是您正在测试 ImageField。 如果之前指定了默认值,则 db 中可能存在仍然具有默认路径的条目,如果它不存在则无法解析。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM