在执行 return render_template('index_db.html', data=data1)时报以下错误:
ValueError: The truth value of a DataFrame is ambiguous. Use a.empty, a.bool(), a.item(), a.any() or a.all().
程序为:
from flask import Flask, render_template, request
import dolphindb as ddb
import pandas as pd
app = Flask(__name__)
s = ddb.session()
s.connect("localhost", 8902, "admin", "123456")
@app.route('/', methods=['GET', 'POST'])
def index():
data1 = None
if request.method == 'POST':
# 用户提交了表单
selected_date = request.form.get('selected_date')
data1 = query_dolphindb(selected_date)
# 渲染模板并传递数据
return render_template('index_db.html', data=data1)
def query_dolphindb(selected_date):
results1_df = pd.DataFrame()
tb = s.loadTable(dbPath="dfs://tushare2", tableName="hushen_daily_line")
s1 = tb.exec('*').limit([2, 5])
results1_df = s1.toDF()
return results1_df
if __name__ == '__main__':
app.run(debug=True)
debug时,跟踪到报错的flask语句为: rv = self.dispatch_request()
try:
request_started.send(self, _async_wrapper=self.ensure_sync)
rv = self.preprocess_request()
if rv is None:
rv = self.dispatch_request()
except Exception as e:
rv = self.handle_user_exception(e)
return self.finalize_request(rv)