flask前台数据通过ajax传递到后台之点赞与视频播放量

实现功能:

1.点击播放视频,后台视频点击量增加

2.点赞按钮,点击为红色,后台视频赞数增加;再次点赞,按钮变为灰色,后台视频赞数不增加

前台点赞按钮:

<a href="#" id="zan-{{ v.id }}" name="iconfont zan">
     <i class="iconfont zan"></i>
</a>
点赞 js:

            $("#zan-{{ v.id }}").click(function () {
                if (this.name == "iconfont zan") {
                    this.innerHTML = "<i class='iconfont unzan'></i>";
                    this.name = "iconfont unzan";

                    var likes = {{ v.like_num }} +1;
                    var url = "{{ url_for('grade.make_likes', id=project.id) }}";
                    var data_dic = {
                        'like': likes,
                        'video': '{{ v.id }}'
                    };
                    $.ajax({
                        type: 'POST',
                        url: url,
                        data: JSON.stringify(data_dic),
                        contentType: 'application/json; charset=UTF-8',
                        dataType: 'json',
                        success: function (data) {
                            window.history.back();
                        }
                    });

                }
                else {
                    this.innerHTML = "<i class='iconfont zan'></i>";
                    this.name = "iconfont zan";
                    var likess = {{ v.like_num }};
                    var urls = "{{ url_for('grade.make_likes', id=project.id) }}";
                    var data_dics = {
                        'like': likess,
                        'video': '{{ v.id }}'
                    };
                    $.ajax({
                        type: 'POST',
                        url: urls,
                        data: JSON.stringify(data_dics),
                        contentType: 'application/json; charset=UTF-8',
                        dataType: 'json',
                        success: function (data) {
                            window.history.back();
                        }
                    });
                }

            });


播放量 js:

            var myvideo1 = document.getElementById('myvideo-{{ v.id }}');
            myvideo1.setAttribute("src", '{{ v.path }}');

            myvideo1.addEventListener('play', function () {
                    var views = {{ v.view_num }} +1;
                    var url = "{{ url_for('grade.make_views', id=project.id) }}";
                    var data_dic = {
                        'view': views,
                        'video': '{{ v.id }}'
                    };
                    $.ajax({
                        type: 'POST',
                        url: url,
                        data: JSON.stringify(data_dic),
                        contentType: 'application/json; charset=UTF-8',
                        dataType: 'json',
                        success: function (data) {
                        }
                    });
            });



  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Flask是一个轻级的Web框架,可以用于构建Web应用程序。在Flask中,前后台数据传递及存储的过程可以通过以下步骤实现: 1. 前端页面通过HTML表单等方式向后台发送请求,请求的数据通过POST或GET方式传递后台。 2. 后台接收到请求后,可以通过Flask提供的request对象获取前端传递过来的数据,例如: ``` from flask import Flask, request app = Flask(__name__) @app.route('/submit', methods=['POST']) def submit(): name = request.form['name'] # 获取表单中name字段的值 age = request.form['age'] # 获取表单中age字段的值 return 'Hello, {}! You are {} years old.'.format(name, age) ``` 3. 后台可以将获取到的数据存储到数据库中,例如使用MySQL、SQLite等关系型数据库或MongoDB等非关系型数据库。 4. 后台可以通过Flask提供的session对象将数据存储到会话中,例如: ``` from flask import Flask, session, escape, request app = Flask(__name__) @app.route('/login', methods=['POST']) def login(): username = request.form['username'] password = request.form['password'] if username == 'admin' and password == '123456': session['username'] = username # 将用户名存储到会话中 return 'Login success!' else: return 'Invalid username or password.' @app.route('/profile') def profile(): username = escape(session['username']) # 从会话中获取用户名 return 'Welcome, {}!'.format(username) ``` 在这个例子中,当用户登录成功后,将用户名存储到会话中。当用户访问个人资料页面时,后台从会话中获取用户名,并返回欢迎页面。 这些都是Flask中前后台数据传递及存储的基本步骤,具体实现还需要视情况而定。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值