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. 數組按鍵值封裝!2. Docker for Mac 創建的dnsmasq容器連不上/不工作的問題3. docker不顯示端口映射呢?4. python - flask _sqlalchemy 能否用中文作為索引條件5. java - 阿里的開發手冊中為什么禁用map來作為查詢的接受類?6. python3.x - git bash如何運行.bat文件?7. javascript - ES6規范下 repeat 函數報錯 Invalid count value8. html5 - 使用echarts中的圖表 一個頁面導入了好幾個js圖表 實現echarts圖表隨著瀏覽器窗口變化而變化時出現了問題9. javascript - webpack中alias配置中的“@”是什么意思?10. javascript - 為什么創建多行多列的表格最后只有一行內有表格
