______返回的非字符串(类型ImageFieldFile)

问题描述 投票:-2回答:1

我正在尝试打印数据库,以查看在提交图像上传时图像是否正确保存。我收到此错误,在打印数据库时str返回了非字符串(类型ImageFieldFile)。我已经看过平台上的其他问题,它们似乎与该问题的解决方案不匹配。我缺少将这张图片正确提交到数据库的原因?这是代码。

#models.py

class Image(models.Model):
image = models.ImageField(upload_to='cover/pdfs', null=True, blank = True)
def __str__(self):

#forms.py
from .models import Image
from django import forms
class ImageForm(forms.ModelForm):
class Meta:
    model= Image
    # "__all__" takes all the fields. please helps with the exception error
    fields= "__all__"
    return self.image

#views.py

def upload(request):
context = {}
userBio = Bio.objects.get(userData = User.objects.get(id = request.session['client']['id']))
if request.method == 'POST':
    dataBinder = ImageForm(request.POST or None,request.FILES or None)
    if dataBinder.is_valid():
        dataBinder.save()
        pics = Image.objects.all()
        context = {
            "imageFeed" : pics
        }
        print("RIght here.. ", pics)
    else:
        print("Not a valid input from form....")
        context = {
            "imageFeed" : "There was an error"
        }
        print("There was an error")
return render(request, "GoEnigma/dashboard.html", context)

这低于我的urlpatterns

#urls.py
urlpatterns += static(settings.MEDIA_URL, document_root=settings.MEDIA_ROOT)

为媒体定义我的根目录

#settings.py
MEDIA_URL = '/images/'
MEDIA_ROOT = os.path.join(BASE_DIR, 'static/images')
python django django-models django-rest-framework django-forms
1个回答
0
投票

原来我只需要摆脱def __str__self():return self.image从模型。

© www.soinside.com 2019 - 2024. All rights reserved.