【发布时间】:2018-01-04 18:54:10
【问题描述】:
我有一个模型:
from cloudinary.models import CloudinaryField
class Image(models.Model):
image = CloudinaryField('image')
还有一个我从 Cloudinary 收到的对象。这是 Cloudinary 在我上传图片后给我的,然后我将它传回了我的服务器:
{'etag': ['***'], 'version': ['***'], 'public_id': ['***'], 'type': ['upload'], 'signature': ['***'], 'created_at': ['2017-07-28T15:54:17Z'], 'secure_url': ['https://res.cloudinary.com/***/***.png'], 'height': ['353'], 'format': ['png'], 'resource_type': ['image'], 'url': ['http://res.cloudinary.com/***/image/upload/***/***.png'], 'width': ['684'], 'bytes': ['133509']}
我似乎无法将它保存到我的模型中。我已经尝试过直接保存它并通过 Cloudinary 文档中的 CloudinaryJsFileField 表单将其放入。两者似乎都不起作用。表单感叹“没有选择文件”,而 model.create() 工作抱怨缺少属性。
这是我使用的表格:
class PhotoDirectForm(ModelForm):
class Meta:
model = Image
fields = ['image']
我尝试过使用CloudinaryJsFileField 和不使用CloudinaryJsFileField,无论哪种方式我都会遇到相同的错误:
<tr><th><label for="id_image">Image:</label></th><td><ul class="errorlist"><li>No file selected!</li></ul><input type="file" name="image" required id="id_image" /></td></tr>
显然它想要一个文件,但这不是 Cloudinary 在我上传图片后给我的!
有人知道如何将 Cloudinary 对象保存到 Django 数据库吗?
【问题讨论】:
标签: django cloudinary