flask实现图片上传

匿名 (未验证) 提交于 2019-12-03 00:21:02

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后台相应的接口
@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)   
标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!