我正在尝试使用python django将图像上传到文件系统。我不知道如何继续前进。
在我的model.py中:
Class Test(object):
mission = models.TextField(blank=True)
image = models.ImageField(upload_to='documents/images/',blank=True)
account = models.OneToOneField(Account, related_name='account')
在我的view.py
中def add_image(request, account):
req = get_request_json(request)
data = Test.objects.add_image(account, req)
在我的manager.py
中Class TestManager(models.Manager):
def add_image(self, account, input):
acc = self.get(account=account)
acc.save()
return acc;
但我不知道如何从这里开始。
我想知道如何将base64图像字符串保存到指定位置并将路径/文件名存储在数据库中?
我使用过python,我将文件写入目录并获取路径并存储在db中。在这里,我想使用django选项。
我也必须用其他文件格式重复相同的过程。
答案 0 :(得分:1)
如果你有一个base64字符串格式的图像,并且你想将它保存到模型ImageField,那就是我要做的事情
import base64
image_b64 = request.POST.get('image') # This is your base64 string image
format, imgstr = image_b64.split(';base64,')
ext = format.split('/')[-1]
data = ContentFile(base64.b64decode(imgstr), name='temp.' + ext)
现在,你可以简单地做到
Test.objects.create(image=data)