首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Trumbowyg: Django服务器可以检测文件上传,但不能检测图像URL输入

Trumbowyg: Django服务器可以检测文件上传,但不能检测图像URL输入
EN

Stack Overflow用户
提问于 2018-07-04 04:02:53
回答 1查看 862关注 0票数 5

我使用的是特伦博格,一个WYSIWYG JavaScript编辑器,它具有从粘贴的URL呈现图像的功能。它还有一个上传插件,它允许上传本地图像和自定义服务器端处理。

我的python/django函数upload_image()可以成功地检测上传的图像--但是当我使用URL图像输入时,我的python函数无法检测它。Trumbowyg只是简单地呈现图像,而没有遍历我的python后端。

这是我的密码:

代码语言:javascript
复制
$('#id_content').trumbowyg({
    btnsDef: {
        // Create a new dropdown
        image: {
            dropdown: ['insertImage', 'upload'],
            ico: 'insertImage'
        }
    },
    // Redefine the button pane
    btns: [
        ['strong', 'em', 'del'],
        ['link'],
        ['image'], // Our fresh created dropdown
    ],
    plugins: {
        // Add imagur parameters to upload plugin for demo purposes
        upload: {
            serverPath: '/upload_image/',
            fileFieldName: 'content_image',
            urlPropertyName: 'url'
        }
    }
});
代码语言:javascript
复制
def upload_image(request):
    print('Success') #only prints when I use the upload input, not the URL input

为什么可以在检测上传的图像而不是URL输入?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2018-07-12 13:22:13

如前所述,如果用户使用URL上传图像,Trumbowyg不会将URL发送到后端。

但是,如果您真的想在自己的服务器上托管映像,那么您可以这样做。

当用户提交表单时,您将在后端接收到textarea的内容。然后,您可以读取内容并查找<img src="...">标记。

此时,您可以检查src值是否以S3桶主机名开头,您可以使用urllibrequests库下载该映像,将其保存到桶中并替换src值。

由于提交的数据将采用HTML格式,请查看优秀的美汤。它将使解析HTML变得容易。

票数 4
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/51165569

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档