如何使用delete方法从Google数据存储区以及我的HTML页面删除元素?

时间:2019-02-09 07:16:27

标签: google-app-engine flask google-cloud-datastore

我目前正在使用Flask和Google数据存储并对其进行处理

@app.route('/todo/api/v1.0/tasks/<int:task_id>', methods=['DELETE'])
def delete_task(task_id):
    pass
return jsonify({'result': True})

我已经使用get和post以及put方法来插入检索和更新,现在我需要使用delete请求删除

我试图通过在HTML页面中使用href传递相应的id值,但我发现这种方式不起作用!

1 个答案:

答案 0 :(得分:0)

def delete_method(task_id):
    k = ndb.Key('ToDo', task_id)
    k.delete()
    return jsonify({"success":True})

上面的代码工作正常,并且ajax请求如下所示

function delData(){
    var id = this.id
    //console.log(id)
    var url = '/DELETE/todo/api/v1.0/task/';
    var xhr = new XMLHttpRequest();
    xhr.open("DELETE", url+id, true);
    xhr.onload = function () {
    var jsonResponse = JSON.parse(xhr.responseText);
        if (xhr.readyState == 4 && xhr.status == "200") {
            console.log(jsonResponse);
            var elem = document.getElementById(id).parentNode;
            while (elem.firstChild) {
                elem.removeChild(elem.firstChild);
                }
            }
        else {
            console.error(jsonResponse);
        }
}
xhr.send(null);
}