【问题标题】:How can i get image from binaryfield in django-rest如何从 django-rest 中的二进制字段获取图像
【发布时间】:2018-02-14 10:49:23
【问题描述】:

我有一个带有二进制字段的模型。myRow 中的数据是 base64 格式。现在我想从存储在数据库中的这个 base64 数据中获取图像。有人可以帮忙......

class myTable(models.Model):
     myRow = models.BinaryField(blank=True, null=True)

【问题讨论】:

  • 请不要告诉我在 django 中使用 ImageField ....我的具体要求不同...
  • 解码 base64 编码的字符串并将其写入文件。 Python 有一个内置的 base64 模块。
  • 您可以将文件添加到响应正文中。
  • 如果您只是想在浏览器中显示图像,您甚至不需要在服务器上解码字符串。您可以使用 Data URI Scheme 在浏览器中显示 base64 字符串。

标签: django django-models django-rest-framework


【解决方案1】:

您可以这样做并获取图像。

myRowimage = request.FILES['myRow'].file.read()

但我会推荐你​​使用 Django 的内置 ImageField.

【讨论】:

  • 它不工作......你能告诉我如何将base64转换为django中的图像......?
【解决方案2】:

这就是我的做法(在管理员中添加图像)。 How to upload files into BinaryField using FileField widget in Django Admin?

您必须设置一个输入文件小部件并将数据保存为二进制文件。 比你加载和解码回来。

【讨论】:

    猜你喜欢
    • 2011-03-12
    • 2018-01-30
    • 2010-11-20
    • 1970-01-01
    • 2016-05-01
    • 2021-09-02
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多