小编EmF*_*eld的帖子

文件上传完成后如何调用JS回调?

我正在为带有appengine后端的应用创建前端上传.

我想要的是一个文件上传解决方案,我不想使用plupload或那些现成的解决方案.

我基本上将图像提交给iframe,然后在上传时盖上封面.然后,在完成后,我执行了一个ajax调用,以获取要渲染的下一个视图的图像ID.但是,在上传完成之前总是调用渲染,因此我没有从后端获取任何图像ID.谁能帮忙?

这是我上传的代码

perform_input3:(event)=>
    event.preventDefault()
    $('#product-input-3').hide()
    $('#product-input-3').submit()
    $('#upload-cover').show()
    item_id = $('#item3_id').val()
    app.views.imageselect.render(item_id)
Run Code Online (Sandbox Code Playgroud)

app.views.imageselect.render(item_id)如下:

render:(data)=>
    @item_id = data
    item_id = @item_id
    $.ajax(
        url: '/get_image_list/'
        type: 'GET'
        dataType: 'json'
        data: {item_id: item_id}
        success:(data) =>
          @payload = data
          $(@el).append imageSelectTemplate(@payload)
          return @
    )
Run Code Online (Sandbox Code Playgroud)

我不想使用setTimeout函数,因为它不会灵活,具体取决于连接速度.任何帮助将不胜感激 :)

javascript jquery google-app-engine flask coffeescript

6
推荐指数
1
解决办法
2066
查看次数

如何在Appengine上用xlrd读取excel文件

我在appengine中使用xlrd.我用烧瓶

我无法读取输入文件,它继续显示相同的错误消息

代码是

def read_rows(inputfile):
    rows = []
    wb = xlrd.open_workbook(inputfile)
    sh = wb.sheet_by_index(0)
    for rownum in range(sh.nrows):
        rows.append(sh.row_values(rownum))
    return rows

@app.route('/process_input/',methods=['POST','GET'])
def process_input():
  inputfile = request.files['file']
  rows=read_rows(request.files['file'])
  payload = json.dumps(dict(rows=rows))
  return payload
Run Code Online (Sandbox Code Playgroud)

我意识到这可能是因为没有上传并将其保存为文件.对此有任何解决方法吗?这也有助于其他许多人.感谢任何帮助,thx

更新:找到我在下面发布的解决方案.对于那些与使用xlrd混淆的人可以参考我发布的开源项目repo.关键是传递文件的内容而不是文件名

python google-app-engine xlrd flask

2
推荐指数
1
解决办法
2733
查看次数