2016-12-16 17 views
0

この投稿を読んでくださった皆様によろしくお願いいたします。 私は任意のコメントや提案を見て楽しみにして私はフラスコ内の私のウェブサイトへの選択ボックスを追加したいが、私はその のHTMLを設定する方法を理解することはできません:)selectfield(wtforms)フラスコのhtmlを設定するには?

私のpythonコード:

class selectmenu(Form): 
    month = SelectField('Choose month',choices=[('dec', 'dec'), ('yan', 'yan'), ('feb', 'febt')]) 

@app.route('/searchemp/', methods=['GET', 'POST']) 
def searchemp(): 
    form = selectmenu(request.form) 
    m = form.month.data 

HTML:

<form action="" class="form-signin" method="post"> 
 
        <h2 class="form-signin-heading" align="center">title</h2> 
 
        <input type="text" class="form-control" 
 
         placeholder= "username" name="username" value="{{request.form.username}}" required autofocus> 
 
           <!-- 
 
           <input type="text" class="form-control" 
 
               placeholder= "month" name="month" value="{{request.form.month}}"> 
 
           --> 
 
                 <select name="month"> 
 
                 <option value="{{request.form.month}}">dec</option> 
 
                 <option value="{{request.form.month}}">yanuary</option> 
 
                 <option value="{{request.form.month}}">feb</option> 
 
                 <option value="{{request.form.month}}">mar</option> 
 
                 </select> 
 
    
 
        <button class="btn btn-lg btn-success btn-block" type="submit">Search</button> 
 
        <br> 
 
        <p align="center">{{error}} </p> 
 
       </form>

+0

最初の行にform' < '行方不明。 – MYGz

+0

質問を編集しました。あなたはどのようにそれを行うための任意の提案を与えることができますか? – trm0808

答えて

0

Jinja2のテンプレートENGあなたは選択フィールドを描画しますが、htmlの選択フィールドを作成する必要はありません.jinja2はすでにそうです。そして、あなたはフォーム送信使用validate_on_submit()またはrequest.method == 'POST'をチェックする必要がある場合:

class SelectMenu(Form): 
    month = SelectField('Select Month', choices=[(1, 'January'), (2,'February')]) 

@app.route('/searchemp/', methods=['GET', 'POST']) 
def searchemp(): 
    form = SelectMenu(request.form) 
    if form.validate_on_submit(): 
     # get posted data 
     m = form.month.data 
    return render_template('index.html', form=form) 

# index.html 
<form action="" method="POST"> 
    {{form.month.label}}{{form.month}} 
</form>