问题描述
我正在尝试构建一个允许调度程序与 sql 数据库交互的 Web 应用程序。
它能够将输入的事件存储到服务器,但尽管存在于数据库中,但不会显示给应用程序。
这是我的代码,用于编写和更新在离开“POST”函数后返回错误的事件。
@app.route("/insert",methods=["POST","GET"])
def insert():
print("before")
cursor = MysqL.connection.cursor()
cur = MysqL.connection.cursor(MysqLdb.cursors.DictCursor)
print("after")
if request.method == 'POST':
title = request.form['title']
start = request.form['start']
end = request.form['end']
print(title)
print(start)
cur.execute("INSERT INTO events (title,start,end) VALUES (%s,%s,%s)",[title,end])
print ('pre committ')
MysqL.connection.commit()
print('post commit')
cur.close()
msg = 'success'
print('done')
这是更新,当我单步执行代码时,这不会运行。
@app.route("/update","GET"])
def update():
print("in commit")
cursor = MysqL.connection.cursor()
cur = MysqL.connection.cursor(MysqLdb.cursors.DictCursor)
if request.method == 'POST':
title = request.form['title']
start = request.form['start']
end = request.form['end']
id = request.form['id']
print(title)
print(start)
cur.execute("UPDATE events SET title = %s,start = %s,end = %s WHERE id = %s ",end,id])
MysqL.connection.commit()
cur.close()
msg = 'success'
return jsonify(msg)
before
after
Test event
2021-07-14 07:30:00
pre committ
post commit
done
[2021-07-14 15:06:01,333] ERROR in app: Exception on /insert [POST]
Traceback (most recent call last):
File "C:\Users\samue\source\repos\Oper Fast WebApp-V1\Webenv\lib\site-packages\flask\app.py",line 2447,in wsgi_app
response = self.full_dispatch_request()
File "C:\Users\samue\source\repos\Oper Fast WebApp-V1\Webenv\lib\site-packages\flask\app.py",line 1953,in full_dispatch_request
return self.finalize_request(rv)
File "C:\Users\samue\source\repos\Oper Fast WebApp-V1\Webenv\lib\site-packages\flask\app.py",line 1968,in finalize_request
response = self.make_response(rv)
File "C:\Users\samue\source\repos\Oper Fast WebApp-V1\Webenv\lib\site-packages\flask\app.py",line 2097,in make_response
raise TypeError(
TypeError: The view function did not return a valid response. The function either returned None or ended without a return statement.
127.0.0.1 - - [14/Jul/2021 15:06:01] "←[35m←[1mPOST /insert HTTP/1.1←[0m" 500 -
Error on request:
Traceback (most recent call last):
File "C:\Users\samue\source\repos\Oper Fast WebApp-V1\Webenv\Lib\site-packages\werkzeug\serving.py",line 323,in run_wsgi
execute(self.server.app)
File "C:\Users\samue\source\repos\Oper Fast WebApp-V1\Webenv\Lib\site-packages\werkzeug\serving.py",line 312,in execute
application_iter = app(environ,start_response)
File "C:\Users\samue\source\repos\Oper Fast WebApp-V1\Webenv\Lib\site-packages\flask\app.py",line 2464,in __call__
return self.wsgi_app(environ,line 2458,in wsgi_app
ctx.auto_pop(error)
File "C:\Users\samue\source\repos\Oper Fast WebApp-V1\Webenv\Lib\site-packages\flask\ctx.py",line 452,in auto_pop
self.pop(exc)
File "C:\Users\samue\source\repos\Oper Fast WebApp-V1\Webenv\Lib\site-packages\flask\ctx.py",line 438,in pop
app_ctx.pop(exc)
File "C:\Users\samue\source\repos\Oper Fast WebApp-V1\Webenv\Lib\site-packages\flask\ctx.py",line 238,in pop
self.app.do_teardown_appcontext(exc)
File "C:\Users\samue\source\repos\Oper Fast WebApp-V1\Webenv\Lib\site-packages\flask\app.py",line 2321,in do_teardown_appcontext
func(exc)
File "C:\Users\samue\source\repos\Oper Fast WebApp-V1\Webenv\Lib\site-packages\flask_MysqLdb\__init__.py",line 100,in teardown
ctx.MysqL_db.close()
MysqLdb._exceptions.OperationalError: (2006,'')
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)