python - 使用 Flask 将数据从表单发送到另一个页面
问题描述
from flask import Flask, request, render_template
import requests
import numpy as np
import joblib
app = Flask(__name__)
@app.route('/')
def home():
return render_template('home.html')
@app.route('/nexthome')
def nexthome():
return render_template('nexthome.html')
@app.route("/predict", methods=['GET', 'POST'])
def predict():
if request.method == 'POST':
print(request.form.get('age'))
try:
total_training = float(request.form.get("total_training"))
age = float(request.form.get('age'))
length_of_service = float(request.form.get("length_of_service"))
KPI = float(request.form.get("KPI"))
awards_won = float(request.form.get("awards_won"))
avg_training_score = float(request.form.get("avg_training_score"))
previous_year_rating = float(request.form.get("previous_year_rating"))
department_Analytics = float(request.form.get("department_Analytics"))
department_Finance = float(request.form.get("department_Finance"))
department_HR = float(request.form.get("department_HR"))
department_Legal = float(request.form.get("department_Legal"))
department_Operations = float(request.form.get("department_Operations"))
department_Procurement = float(request.form.get("department_Procurement"))
department_R = float(request.form.get("department_R"))
department_Sales_Marketing = float(request.form.get("department_Sales_Marketing"))
department_Technology = float(request.form.get("department_Technology"))
education_level_Bachelor = float(request.form.get("education_level_Bachelor"))
education_level_Below_Secondary = float(request.form.get("education_level_Below_Secondary"))
education_level_Master = float(request.form.get("education_level_Master"))
gender_f = float(request.form.get("gender_f"))
gender_m = float(request.form.get("gender_m"))
arguments = [total_training, age, length_of_service, KPI, awards_won, avg_training_score, previous_year_rating, department_R,
department_Analytics, department_Sales_Marketing, department_Finance, department_HR, department_Legal, department_Operations, department_Procurement,
department_Technology, education_level_Bachelor, education_level_Below_Secondary, education_level_Master, gender_f, gender_m]
pred_arg = np.array(arguments)
pred_arg = pred_arg.reshape(1, -1)
load_model = open("decision_model.pkl", "rb")
model = joblib.load(load_model)
prediction = model.predict(pred_arg)
except ValueError:
return "Please Checked the Value Entered and Try again Cheers"
return render_template("predict.html", final_prediction = prediction)
if __name__ == "__main__":
app.run(debug=True)
home.html
<form action="/nexthome" method='GET'>
<div class="form-group">
<label for="gender_m"><p class="font-weight-bold">Male</p></label>
<input type="text" name="gender_m">
<small id="gender_mHelp" class="form-text text-muted">Enter 1 if employee belong to this gender </small>
</div>
<input class='btn btn-primary' type='submit' value='Next'>
</form>
nexthome.html
<form method="POST" action="/predict">
<div class="form-group">
<label for='age'><p class="font-weight-bold">age</p></label>
<input type="text" name='age'>
<small id="ageHelp" class="form-text text-muted">Enter the Age of the Employee</small></br>
</div>
<input class='btn btn-primary' type='submit' value='Submit'>
</form>
大家好,我正在尝试使用烧瓶部署应用程序,该应用程序应该从两个页面上的表单中检索数据,但我不知道该怎么做,我能够从主页导航到下一页,但它似乎无法将数据传递到下一页,并且能够在另一页中显示结果,现在我被卡住了,我已经尝试了所有我无法让它工作的方法。任何帮助,请。
解决方案
推荐阅读
- windows - 如何连接代理:IPC connect call
- php - php: simplexml_load_file 在不同的环境下输出不同
- python - 何时使用 `raise_for_status` 与 `status_code` 测试
- go - 为什么我的 Go 应用程序没有像 busybox `cat` 命令那样从 sysfs 中读取数据?
- c# - WPF 应用程序的 ICommand 实施中的 CS0201 错误
- hyperledger-fabric - 将 Fabric 节点 SDK 1.4.x 与 Fabric 2.0 一起使用
- amazon-web-services - 如何修复 AWS Config 生成 AccessDenied 错误?
- android - 项目构建任务失败(无法解析所有配置文件)
- vbscript - 将 int 数组拆分为两个数组偶数和奇数 VBscript 错误
- python - 子类中的 Jsonpickle 更改数据类型