Flask входная строка для возврата значения - PullRequest
0 голосов
/ 10 марта 2020

У меня есть поле ввода HTML FORM, в котором пользователь будет вводить такие слова, как «Финансы», «Продажи» и т. Д. c. Как только ввод получен FLASK, он преобразует слова / строки в число, такое как Finance = "1", Sales = "2" et c. (и возвращает число в py-файл для прогнозирования). Как добавить слова / строки вместо числового значения в FLASK, а затем выполнить присвоение строк числовому значению, все в файле FLASK?

Следующий код, который я использовал:

@app.route('/predict',methods=['GET','POST'])
def predict(): 
    if request.method == 'POST':

        BizUnit = request.form.get('BizUnit', None)
        Region = request.form.get('Region', None)
        Category = request.form.get('Category', None)
        int = (BizUnit, Region, Category)
        return int   

def convert_to_int(int):
    word_dict = {'COO':0, 'Finance':1, 'HR':2, 'AMER':0, 'APAC':1, 'EMEA':2,'Resource':0, 'Facility':1, 'Service':2, 0: 0}
    return int(word_dict)
    final = [np.array(int)]
    prediction = model.predict(final)

    output = round(prediction[0], 2)

    return render_template('index.html', prediction_text='Spends should be $ {}'.format(output))

возвращает это «COO» только вместо прогнозируемого значения. ie. строки не были преобразованы в числа, которые требуются для файла pkl.

enter image description here и код в HTML

<form action="{{ url_for('predict')}}"method="post">
                            <div class="form-box">
                            <input list="browsers" name="BizUnit" placeholder="BizUnit" required="required"/>

                                <datalist id="browsers">
                                <option value="Finance"</option>
                                <option value="Sales"</option>
                                <option value="Marketing"</option>

                                </datalist>

Любая помощь будет высоко ценится. Спасибо.

...