首先,我理解使用ORM解决方案的价值,并在以后使用SQL-Alchemy。Flask mysql获得对SQL命令的响应(不使用SQL-Alchemy)
我已经安装了Flask,并使用flask-mysql。
我不知道如何获得SQL“desc”命令的结果。
这是我的工作代码:
from flask import Flask, render_template, request, redirect, jsonify
import requests
from flaskext.mysql import MySQL
app = Flask(__name__)
@app.route("/")
def main():
return render_template('login.html')
@app.route("/login", methods=['POST'])
def login():
#username = request.form['username'] #not using the form fields yet
#password = request.form['password']
mysql = MySQL()
app.config['MYSQL_DATABASE_USER'] = '<my user here>'
app.config['MYSQL_DATABASE_PASSWORD'] = '<password here>'
app.config['MYSQL_DATABASE_DB'] = '<database name here>'
app.config['MYSQL_DATABASE_HOST'] = '<database server IP address here>'
mysql.init_app(app)
conn = mysql.connect()
cursor = conn.cursor()
#cursor = mysql.connection.cursor() #invalid code, at least for this version of flask-mysql
cursor.execute("desc user;")
result = jsonify(cursor.fetchall())
#row = cursor.fetchone()
return "<!DOCTYPE html><html><body>" + str(result)+ "</body></html>"
if __name__ == "__main__":
app.run()
因为结果的内容是“响应268个字节,似乎是连接到数据库,登录,并发送递减命令行[200 OK ]“(通过在浏览器中获取响应后查看页面源代码可以看到这一点)。
有没有什么办法可以得到结果(表格描述),而不仅仅是“OK我运行这个命令”?
谢谢。
该模板只是一个简单的HTML页面,其中包含一个表单,用于执行发布操作。该表格有一个用户名和密码字段和一个按钮。 – JakeJ
用户是我数据库中的表名。 – JakeJ
你想要做一些AJAX?或者你只需要以简单的方式呈现列属性? – PRMoureu