繁体   English   中英

如何在 django 中使用 views.py 中的图像保存 object

[英]How to save an object with image from views.py in django

在我的 django 项目中,我必须将 views.py 中的图像保存到数据库中,这是我的models.py

class Mymodel(models.Model):
    id=models.IntegerField(unique=True,primary_key=True)
    name=models.CharField(max_length=20,unique=True)
    qrCode=models.ImageField(upload_to="img/")

    def __str__(self):
        return self.name

这是我的意见.py

def mainForm(request):
    if request.method=="POST":
        id=request.POST['id']
        name=request.POST['name']
        newItem=Mymodel.objects.create(id=id,name=name,qrCode="../qr.jpg")
        newItem.save()
        return HttpResponse("item saved")
    else:    
        return render(request,"main.html") 

虽然我正在编写这样的代码,但它的工作但图像没有保存到数据库中,只有 url 正在保存。 如何解决这个问题? 实际上从views.py上传图片的正确方法是什么?

我想您的挑战来自您的观点,因为您正在发布,您需要将图像属性(qrCode)添加到您的帖子 function 中,如下所示:

def mainForm(request):
    if request.method=="POST":
        id=request.POST['id']
        name=request.POST['name']
        qrCode = request.POST['qrCode']
        newItem=Mymodel.objects.create(id=id,name=name,qrCode=qrCode)
        newItem.save()
        return HttpResponse("item saved")
    else:    
        return render(request,"main.html") 

HTML for main.html 输入上传图片

<input  type="file" name="qrCode" accept="image/*" id="id" multiple>
  ...
   ...

暂无
暂无

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

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