python - flask框架中在jinja2模板中調用視圖函數但是不想重定向怎么辦
問題描述
我想調用視圖函數delete,但是不想重定向到delete這個頁面可以實現嗎?
問題解答
回答1:按照我的理解我覺得你是想刪除的時候不刷新頁面,如果是這樣那就要用一下ajax了,用ajax把id傳給相關的處理視圖,然后在視圖里面獲取傳過來的id把它刪掉,代碼:
function deleteUser(userid) { var post_data = {’userid’: userid, } $.ajax({type: 'POST',url: '/deleteuser',data: JSON.stringify(post_data, null, ’t’),contentType: ’application/json;charset=UTF-8’,success: function(result) { // 傳完數據之后做某些處理 ...} });}
在flask里面的視圖:
@main.route(’/deleteuser’, methods=[’POST’])def delete_user(): if request.method == ’POST’:user_id = request.json[’userid’]user = User.query.get_or_404(user_id)db.session.delete(user)db.session.commit()return ’OK’// 這里你返回你要在頁面上更新的數據,用來在上面的ajax里面的success部分做處理
這樣可以實現不刷新頁面刪除指定的用戶
回答2:如果不想跳轉,可以考慮使用 AJAX 方式訪問刪除動作的 URL,刪除完成之后,再刷新當前頁面。
你使用的跳轉的方式,一般刪除完了之后要跳回到當前頁面,以便顯示最新的結果
相關文章:
1. python的文件讀寫問題?2. javascript - jquery hide()方法無效3. mysql里的大表用mycat做水平拆分,是不是要先手動分好,再配置mycat4. 怎么用css截取字符?5. css - 定位為absolute的父元素中的子元素 如何設置在父元素的下面?6. python - 獲取到的數據生成新的mysql表7. CSS3可否做出這個效果?8. window下mysql中文亂碼怎么解決??9. javascript - 圖片鏈接請求一直是pending狀態,導致頁面崩潰,怎么解決?10. javascript - 請問 chrome 為什么會重復加載圖片資源?
