我如何为任何用户保存图像

时间:2019-02-08 08:33:00

标签: python django

在我的网站中,用户可以上传图像进行编辑,因此我应该将其图像保存在模型中,并再次访问图像,我应该为任何图像保存用户名。我想在用户转到主页时删除其图像。但是我有问题。这个错误: OperationalError,位于/ 没有这样的列:imgProcess_image.username

# model
    class Image(models.Model):
        username = models.CharField(unique=True, max_length=30)
        image = models.ImageField(upload_to='user_images')


# form
    class Upload(forms.ModelForm):
        username = Image.username

        class Meta:
            model = Image
            fields = ['image']

        def set_user(self, un):
            self.username = un


# views
    def delete_image_of_user(request):
        Image.objects.get(username=request.user.username).delete()

    def home(request):
        delete_image_of_user(request)
        hash = {}
        comments = CommentModel.objects.all()
        hash["comments"] = comments
        return render(request, "imgProcess/home.html", hash)

1 个答案:

答案 0 :(得分:0)

您的数据库有未应用的迁移,如果您在数据库中看到,则不会在“图像”表中找到“用户名”列。您应该构建并应用迁移。运行python manage.py makemigrations,然后运行python manage.py migrate来应用它们。