• 技术文章 >Python框架 >Flask

    flask怎么实现多图上传

    silencementsilencement2019-07-26 11:10:05原创4700

    flask实现图片上传

    前端调用接口,进行访问:在js文件下,ajax去访问地址

    注意:上面是一个需要提交内容的form,通常情况下,我们直接通过form提交的话, 提交后当前页面跳转到form的action所指向的页面。然而,很多时候我们比不希望提交表单后页面跳转,那么,我们就可以使用ajaxSubmit(obj)来提交数据。

    $('#form-name').submit(function(){
        $(this).ajaxSubmit({
            # 访问后端的接口
            url:'/house/images/',
            # 请求的方式
            type:'POST',
            # 数据的类型
            dataType:'json',
            # 请求成功,进行的操作
            success:function(data){
                if (data.code == '200'){
    
                }   
            },
            # 请求失败进行相应的操作
            error:function(data){
                alert(data.msg)
            }  
       })

    flask后台相应的接口

    将图片放在static文件夹下

    image_url = os.path.join(os.path.join('/static', 'upload'), images.filename)
    @house_blueprint.route('/images/', methods=['POST']) def newhouse.images():
        # 获得图片(images:<FileStorage: 'wa.jpg' ('image/jpeg')>)
        images = request.files.get('house_image')
        house_id = request.form.get('house_id')
        # 得到upload的路径
        upload_dir = os.path.join(os.path.join(BASE_DIR,'static'), 'upload')
        # 得到上传图片要保存的路径
        # 'D:\\project\\houseproject\\static\\upload\\wa.jpg'
        url = os.path.join(upload_dir,images.filename)
        # 保存图片
        images.save(url)
    
        house_image = HouseImage()
        house_image.house_id = house_id
        image_url = os.path.join(os.path.join('/static', 'upload'), images.filename)
        house_image.url = image_url    try:
            house_image.add_update()
        except:
            return jsonify(status_code.DATABAE_ERROR)
    
        house = House.query.get(house_id)
        if not house.index_image_url:
    
            house.index_image_url = image_url        try:
                house.add_update()
            except:
                return jsonify(status_code.DATABAE_ERROR)
        return jsonify(code=status_code.OK, image_url=image_url)


    专题推荐:flask多图上传
    品易云
    上一篇:flask多线程模式 下一篇:flask框架要学多久

    相关文章推荐

    • Flask的URL传参方式有哪些

    全部评论我要评论

    © 2021 Python学习网 苏ICP备2021003149号-1

  • 取消发布评论
  • 

    Python学习网