【发布时间】:2018-09-03 09:39:18
【问题描述】:
我想将文件名从我的 app.py 解析为 graph.js。但我无法将变量名添加到 js 文件中。我正在使用烧瓶
这是文件结构
- app/
- flask_app.py
- templates/
-> index.html
-> data/
-> file1.csv
- static/
-> js/
-> create-graph.js
我的应用看起来像这样(相关部分):
data_files = ["file1.xlsx", "file2.xlsx", "file3.xlsx"]
cur = 0
df1 = pd.read_excel("data/" + data_files[cur])
df1.to_csv('templates/data/' + data_files[cur][:10] + '.csv', encoding='utf-8', index=False)
所以我有从 xlsx 转换为 csv 的文件,然后我想提取 csv 文件及其名称。我需要将data_files 和cur 传递给我的.js 文件... 这是相关的.js:
function parseData(createGraph) {
var name = '{{data_files[cur][:10]}}';
console.log(name);
Papa.parse("static/data/" + name + ".csv", {
download: true,
complete: function(results) {
createGraph(results.data);
}
});
}
但是好像不能把文件名传到这里:var name = '{{data_files[cur][:10]}}';
在控制台上它给了我完全相同的字符串
那么我做错了什么?
我也尝试将此添加到应用程序:
@app.route('/create-graph.js')
def script():
return render_template('create-graph.js', fileName="data_files[cur][:10]")
仍然没有运气......
如果有人问,这里是我如何调用 .js 文件:
...
<script src="{{ url_for('static', filename='js/create-graph.js') }}"></script>
...
【问题讨论】: