无法在Django的数据库模型中上传图像

问题描述

views.py

def create(request):

    if request.method == "POST":
        form = Create(request.POST)
        if form.is_valid():
            title = request.POST.get('title','')
            des = request.POST.get('description','')
            bid = request.POST.get('startingbid','')
            imageurl= request.POST.get('imageUrl','')
            category = request.POST.get('category','')
            image = request.FILES['image']
            listing = Auctionlisting(title=title,description=des,startingBid=bid,imageUrl=imageurl,category=category,image=image)
            listing.save()
            return HttpResponseRedirect(reverse('create'))
    else:
        form = Create()

        return render(request,"auctions/creating.html",{
        "create":form
        })

我无法将图像从表单保存到数据库中,出现以下错误: / create

处的MultiValueDictKeyError
  'image'

models.py

class Auctionlisting(models.Model):
    title = models.CharField(max_length=64,unique=True,default='')
    description = models.TextField(max_length=200)
    startingBid = models.IntegerField()
    imageUrl = models.CharField(max_length=100,blank=True,default='')
    category = models.CharField(max_length=64,default='')
    image = models.ImageField(upload_to='static/images',default='',max_length=100,height_field=None,width_field=None)

forms.py

class Create(forms.Form):
   title = forms.CharField(label= "title")
   description = forms.CharField(widget=forms.Textarea(),label='')
   startingbid = forms.IntegerField( label="startingbid")
   imageurl= forms.CharField(label="imageurl",required=False)
   category= forms.CharField(label="category",required=False)
   image= forms.FileField(label="image",required=False)

如果我在保存时不使用图像字段选项:

 listing = Auctionlisting(title=title,category=category)

就这样就可以正常工作了。只是图片上传出现问题。

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...