【问题标题】:Flask and javascript to MySQL烧瓶和 javascript 到 MySQL
【发布时间】:2017-04-03 11:37:15
【问题描述】:

我开始创建一个简单的烧瓶驱动的网页。 网页任务是一个简单的按钮,将更新状态 在 mysql 上,只要它在按下时改变它的颜色状态。

但我对烧瓶框架有点陌生,不知道如何注入正确的代码 实现结合javascript的情况。希望有人可以帮助或演示如何执行此操作,或者显示一些说明步骤。

这是我的示例代码:

from flask import Flask, render_template

app = Flask(__name__)

@app.route("/")
def sample():
    return render_template('button.html')

if __name__ == "__main__":
    app.run(port=8001,debug=True)

我在模板文件夹下的示例 button.html:

<!DOCTYPE html>
<html>
<head>

<script>
    var count = 1;
    function setColor(btn) {
        var property = document.getElementById(btn);
        if (count == 0) {
            property.style.backgroundColor = "#000000"
            count = 1;        
        }
        else {
            property.style.backgroundColor = "#7FFF00"
            count = 0;
        }
    }
</script>
</head>

<body>

<input type="button" id="button" value = "button" style= "color:white;background-color: #000000;" onclick="setColor('button')";/>

</body>
</html>

【问题讨论】:

    标签: javascript python mysql flask


    【解决方案1】:

    有几种不同的方法来处理它。一个简单的方法是创建一个这样的 javascript 函数:

    <script>
       $(function(){
           $("#flaskRoute").onclick("#divID");
       });
    </script>
    

    您的 HTML 非常简单。注意 id="divID" 位置。

    <input type="button" id="divID" value = "button" style= 
    "color:white;background-color: #000000;" onclick="setColor('button')";/>
    

    在我们使用#flaskRoute 之前的javascript 中。这将调用 Flask 路由。我不知道你在 mysql 中使用什么表和字段,所以我只是做了一些东西。

    from flask import Flask, request, render_template
    import pymysql
    
    db = pymysql.connect("localhost", "username", "password", "DB")
    
    app = Flask(__name__)
    api = Api(app)
    
    @app.route('/flaskRoute')
    def put(self, color):
            cursor = db.cursor()
            sql = "INSERT tablename SET color = %s WHERE fieldname = %s"
            cursor.execute(sql, (color, fieldname))
            db.commit()
            return render_template('button.html')
    
    if __name__ == '__main__':
    app.run(debug=True)
    

    这是一个向数据库中插入一些东西的示例代码,如果您已经知道您定义了哪些颜色,则可以进行更新。您也可以使用相同的方法在网页加载时查询数据库以获取数据库中的当前颜色集。

    【讨论】:

      猜你喜欢
      • 2020-12-21
      • 1970-01-01
      • 1970-01-01
      • 2018-10-02
      • 1970-01-01
      • 2021-04-25
      • 1970-01-01
      • 1970-01-01
      • 2017-04-16
      相关资源
      最近更新 更多