我似乎无法弄清楚是什么原因引起的,我知道当发生可变错误时通常会发生错误的请求,但是,这似乎不适用于我的情况。
我的程序具有两个功能:上传文件和显示标签表内容
文件上传没有问题,但是,在显示选项卡内容时,每次尝试选择选项卡时,都会出现错误消息,并且指向文件功能。
这是我的HTML代码文件上传
<p>Data Source</p>
<div class="div1" method="GET" action="/">
{% for file in uploads %}
{{uploads}}
<br>
{% endfor %}
</div>
</div>
<br>
<form action = "/successful" method = "post" enctype="multipart/form-data">
<input type="file" name="files" />
<input type = "submit" value="Upload">
</script>
标签内容
<div class="tab">
<button class="tablinks" onclick="openCity(event, 'wc')">Word Cloud</button>
<button class="tablinks" onclick="openCity(event, 'sd')">Sample Data</button>
<div id="wc" class="tabcontent">
<h3>Word Cloud</h3>
<p>London is the capital city of England.</p>
</div>
<div id="sd" class="tabcontent">
<h3>Sample Data</h3>
<p>Paris is the capital of France.</p>
</div>
<script>
function openCity(event, cityName) {
var i, tabcontent, tablinks;
tabcontent = document.getElementsByClassName("tabcontent");
for (i = 0; i < tabcontent.length; i++) {
tabcontent[i].style.display = "none";
}
tablinks = document.getElementsByClassName("tablinks");
for (i = 0; i < tablinks.length; i++) {
tablinks[i].className = tablinks[i].className.replace(" active", "");
}
document.getElementById(cityName).style.display = "block";
evt.currentTarget.className += " active";
}
</script>
烧瓶.py代码
uploads = []
@app.route('/successful', methods = ['POST'])
def success():
if request.method == 'POST':
f = request.files['files']
f.save(f.filename)
uploads.append(f.filename)
return render_template("base.html", uploads=uploads)
model = [
{'id': '1', 'bank': 'U.S. BANCORP', 'complaints': '600'},
{'id': '2', 'bank': 'EQUIFAX, INC.', 'complaints': '250'},
{'id': '3', 'bank': 'Navient Solutions, LLC', 'complaints': '300'},
{'id': '4', 'bank': 'CITIBANK, N.A.', 'complaints': '400'},
{'id': '5', 'bank': 'JPMORGAN CHASE & CO.', 'complaints': '500'}
]
@app.route('/', methods=['GET'])
def dropdown2():
model = [
{'bank': 'U.S. BANCORP'},
{'bank': 'EQUIFAX, INC.'},
{'bank': 'Navient Solutions, LLC'},
{'bank': 'CITIBANK, N.A.'},
{'bank': 'JPMORGAN CHASE & CO.'},
{'bank': 'TRANSUNION INTERMEDIATE HOLDINGS, INC.'},
{'bank': 'Experian Information Solutiona Inc.'},
{'bank': 'WELLS FRAGO; COMPANY'},
{'bank': 'BANK OF AMERICA, NATIONAL ASSOCIATION'},
{'bank': 'CAPITAL ONE FINANCIAL CORPORATION'}
]
model2 = [
{'quarter': 'Q1'},
{'quarter': 'Q2'},
{'quarter': 'Q3'},
{'quarter': 'Q4'}
]
model3 = [
{'id': '1', 'percent': '25%'},
{'id': '2', 'percent': '50%'},
{'id': '3', 'percent': '75%'},
{'id': '4', 'percent': '100%'}
]
return render_template('base.html', model=model, model2=model2, model3=model3)
@app.route("/")
def index():
return render_template("index.html")
if __name__ == "__main__":
app.run(debug=True)
如果有人能在错误的地方给我建议,请多谢!
将request.files['files']
更改为request.files['file']
:
def success():
if request.method == 'POST':
f = request.files['file']