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. docker gitlab 如何git clone?2. java报错Communications link failure 该如何解决?3. android - 项目时间长了,字符串文件strings有的字符串可能是多余的,有没有办法快速检测那些是没用的?4. javascript - 怎么看网站用了什么技术框架?5. mysql - 用PHPEXCEL将excel文件导入数据库数据5000+条,本地数据库正常,线上只导入15条,没有报错,哪里的问题?6. angular.js使用$resource服务把数据存入mongodb的问题。7. 刷新页面出现弹框8. 关于Android权限的获取问题,大家遇到过这样的情况嘛?9. angular.js - angularJs ngRoute怎么在路由传递空字符串及用ng-switch取得10. PC 手机兼容的 编辑器
