WTForms를 사용하여 모델 목록에서 양식을 생성하려면 어떻게해야합니까?

Lorbat

Prediction모델 목록이 있습니다. 양식에 바인딩하고 다시 게시 할 수 있도록하고 싶습니다. 게시물 이 양식에 바인딩하는 각 항목에 대한 Prediction모델 id필드 와 홈 / 어웨이 점수를 연결하도록 양식을 구성하려면 어떻게해야합니까?

전망

@app.route('/predictor/',methods=['GET','POST'])
@login_required
def predictions():    
    user_id = g.user.id
    prediction= # retrieve prediction
    if request.method == 'POST':
        if form.validate() == False:
            flash('A score is missing, please fill in all predictions')
            render_template('predictor.html', prediction=prediction, form=form)
        else:
            for pred in prediction:
                # store my prediction
            flash('Prediction added')
            return redirect(url_for("predictions"))    
    # display current predictions
    elif request.method == 'GET':
        return render_template('predictor.html', prediction=prediction, form=form)

형태

class PredictionForm(WTForm):
    id = fields.IntegerField(validators=[validators.required()], widget=HiddenInput())
    home_score = fields.TextField(validators=[validators.required()])
    away_score = fields.TextField(validators=[validators.required()])

주형

  <form action="" method="post">
    {{form.hidden_tag()}}
    <table>
        {% for pred in prediction %}
        <tr>
            <td>{{pred.id}}</td>
            <td>{{form.home_score(size=1)}}</td>
            <td>{{form.away_score(size=1)}}</td>               
        </tr>
        {% endfor %}
    </table>
    <p><input type="submit" value="Submit Predictions"></p>
   </form>

내 데이터를에서 올바르게 바인딩 할 수 없습니다 POST. 게시 데이터에 모든 필수 필드 가 누락되어 필수 유효성 검사기가 계속 실패 합니다.

nsfyn55

예측 목록의 항목에 바인딩 할 하위 양식이 필요합니다.

설명하신 양식을 사용하면 단일 예측 만 제출할 수 있습니다. 반복 가능한 예측을 바인딩하고 각각에 대한 홈 앤 어웨이 예측을 원하는 것처럼 보이기 때문에 불일치가있는 것 같습니다. 사실, 그것은 결코 id필드를 다시 게시하지 않을 것 입니다. 이로 인해 항상 양식 유효성 검사가 실패합니다. 나는 당신이 원하는 것은 하위 양식 목록이라고 생각합니다. 이렇게 :

# Flask's form inherits from wtforms.ext.SecureForm by default
# this is the WTForm base form. 
from wtforms import Form as WTForm

# Never render this form publicly because it won't have a csrf_token
class PredictionForm(WTForm):
    id = fields.IntegerField(validators=[validators.required()], widget=HiddenInput())
    home_score = fields.TextField(validators=[validators.required()])
    away_score = fields.TextField(validators=[validators.required()])

class PredictionListForm(Form):
    predictions = FieldList(FormField(PredictionForm))

뷰는 다음 라인을 따라 무언가를 반환해야합니다.

predictions = # get your iterable of predictions from the database
from werkzeug.datastructures import MultiDict
data = {'predictions': predictions}
form = PredictionListForm(data=MultiDict(data))
    
return render_template('predictor.html', form=form)

양식을 다음과 같이 변경해야합니다.

<form action='my-action' method='post'>
    {{ form.hidden_tag() }}
    {{ form.predictions() }}
</form>

이제이은을 인쇄 할 <ul><li>를 Fieldlist가 무엇을 먹으 렴 때문에 당 항목을 선택합니다. 스타일을 지정하고 표 형식으로 만드는 것은 사용자에게 맡기겠습니다. 약간 까다로울 수 있지만 불가능하지는 않습니다.

POST에서 각 예측의 홈 및 원정 점수가 포함 된 양식 데이터 사전을 얻을 수 있습니다 id. 그런 다음 이러한 예측을 SQLAlchemy 모델에 다시 바인딩 할 수 있습니다 .

[{'id': 1, 'home': 7, 'away': 2}, {'id': 2, 'home': 3, 'away': 12}]

이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.

침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제

에서 수정
0

몇 마디 만하겠습니다

0리뷰
로그인참여 후 검토

관련 기사

분류에서Dev

xamarin 양식의 일반 뷰 모델에서 목록 항목 인 Grids Width를 속성에 바인딩하려면 어떻게해야합니까?

분류에서Dev

Rails 4에서 form_tag를 사용하여 모델을 중첩하려면 어떻게해야합니까?

분류에서Dev

Orbeon에서 REST API를 사용하여 양식 정의를 생성하려면 어떻게해야합니까?

분류에서Dev

항목 목록에서 각각 여러 양식을 생성하려면 어떻게해야합니까?

분류에서Dev

단일 테이블을 사용하여 모델과 여러 다른 모델간에 HABTM 관계를 설정하려면 어떻게해야합니까?

분류에서Dev

tf.keras.Model.summary를 사용하여 아버지 모델에있는 자식 모델의 레이어를 보려면 어떻게해야합니까?

분류에서Dev

양식 모델 바인딩 양식에서 도우미를 사용하지 않고 변수에 액세스하려면 어떻게해야합니까?

분류에서Dev

하위 모델을 사용하여 양식의 상위 모델 필드에 액세스하려면 어떻게해야합니까?

분류에서Dev

Swagger를 사용하여 모의 서버를 생성하려면 어떻게해야합니까?

분류에서Dev

NLTK Python을 사용하여 모든 문장에 대해 CFG를 생성하려면 어떻게해야합니까?

분류에서Dev

Scala에서 누가 항목을 제곱했는지 표를 사용하여 목록을 생성하려면 어떻게해야합니까?

분류에서Dev

dynlm 모델을 사용하여 Stargazer에서 인식되지 않는 개체 오류를 수정하려면 어떻게해야합니까?

분류에서Dev

AMD 모듈을 사용하여 TypeScript에서 생성 한 코드를 실제로 실행하려면 어떻게해야합니까?

분류에서Dev

Controller를 사용하여 Magento에서 제품을 생성하려면 어떻게해야합니까?

분류에서Dev

Angular / Express / MongoDB에서 필터를 사용하여 검색을 생성하려면 어떻게해야합니까?

분류에서Dev

Django에서 템플릿을 사용하여 모델에서 사용자 지정 메서드를 호출하려면 어떻게해야합니까?

분류에서Dev

Odoo 10에서 모델없이 뷰를 생성하려면 어떻게해야합니까?

분류에서Dev

모델 양식을 사용하여 django에서 블로그 기사를 어떻게 업데이트합니까?

분류에서Dev

Wagtail App Pages를 사용하여 Django 모델에서 동적 페이지를 생성하려면 어떻게해야합니까?

분류에서Dev

Typescript를 사용하여 생성자의 배열에 값을 할당하려면 어떻게해야합니까?

분류에서Dev

REST API를 사용하여 SharePoint에서 목록 항목을 가져 오려면 어떻게해야합니까?

분류에서Dev

Linux를 사용하여 텍스트에서 철자가 틀린 모든 단어 목록을 얻으려면 어떻게해야합니까?

분류에서Dev

목록에서 사전을 생성하려면 어떻게해야합니까?

분류에서Dev

내 양식에서 setInterval을 사용하여 알람 시계를 만들려면 어떻게해야합니까?

분류에서Dev

VB.Net MVC에서 목록을 뷰에 전달하고 모델을 사용하여 표시하려면 어떻게해야합니까?

분류에서Dev

prefetch_related를 사용하여 admin list_display에서 사용자 정의 열에 대한 관련 모델을 얻으려면 어떻게해야합니까?

분류에서Dev

sklearn을 사용하여 의사 결정 트리 모델에서 내 예측의 정확도를 개선하려면 어떻게해야합니까?

분류에서Dev

훈련 된 GloVe / word2vec 모델을 사용하여 기사에서 키워드를 추출하려면 어떻게해야합니까?

분류에서Dev

IDataErrorInfo를 사용하여 부모 클래스에서 자식 개체의 유효성을 검사하려면 어떻게해야합니까?

Related 관련 기사

  1. 1

    xamarin 양식의 일반 뷰 모델에서 목록 항목 인 Grids Width를 속성에 바인딩하려면 어떻게해야합니까?

  2. 2

    Rails 4에서 form_tag를 사용하여 모델을 중첩하려면 어떻게해야합니까?

  3. 3

    Orbeon에서 REST API를 사용하여 양식 정의를 생성하려면 어떻게해야합니까?

  4. 4

    항목 목록에서 각각 여러 양식을 생성하려면 어떻게해야합니까?

  5. 5

    단일 테이블을 사용하여 모델과 여러 다른 모델간에 HABTM 관계를 설정하려면 어떻게해야합니까?

  6. 6

    tf.keras.Model.summary를 사용하여 아버지 모델에있는 자식 모델의 레이어를 보려면 어떻게해야합니까?

  7. 7

    양식 모델 바인딩 양식에서 도우미를 사용하지 않고 변수에 액세스하려면 어떻게해야합니까?

  8. 8

    하위 모델을 사용하여 양식의 상위 모델 필드에 액세스하려면 어떻게해야합니까?

  9. 9

    Swagger를 사용하여 모의 서버를 생성하려면 어떻게해야합니까?

  10. 10

    NLTK Python을 사용하여 모든 문장에 대해 CFG를 생성하려면 어떻게해야합니까?

  11. 11

    Scala에서 누가 항목을 제곱했는지 표를 사용하여 목록을 생성하려면 어떻게해야합니까?

  12. 12

    dynlm 모델을 사용하여 Stargazer에서 인식되지 않는 개체 오류를 수정하려면 어떻게해야합니까?

  13. 13

    AMD 모듈을 사용하여 TypeScript에서 생성 한 코드를 실제로 실행하려면 어떻게해야합니까?

  14. 14

    Controller를 사용하여 Magento에서 제품을 생성하려면 어떻게해야합니까?

  15. 15

    Angular / Express / MongoDB에서 필터를 사용하여 검색을 생성하려면 어떻게해야합니까?

  16. 16

    Django에서 템플릿을 사용하여 모델에서 사용자 지정 메서드를 호출하려면 어떻게해야합니까?

  17. 17

    Odoo 10에서 모델없이 뷰를 생성하려면 어떻게해야합니까?

  18. 18

    모델 양식을 사용하여 django에서 블로그 기사를 어떻게 업데이트합니까?

  19. 19

    Wagtail App Pages를 사용하여 Django 모델에서 동적 페이지를 생성하려면 어떻게해야합니까?

  20. 20

    Typescript를 사용하여 생성자의 배열에 값을 할당하려면 어떻게해야합니까?

  21. 21

    REST API를 사용하여 SharePoint에서 목록 항목을 가져 오려면 어떻게해야합니까?

  22. 22

    Linux를 사용하여 텍스트에서 철자가 틀린 모든 단어 목록을 얻으려면 어떻게해야합니까?

  23. 23

    목록에서 사전을 생성하려면 어떻게해야합니까?

  24. 24

    내 양식에서 setInterval을 사용하여 알람 시계를 만들려면 어떻게해야합니까?

  25. 25

    VB.Net MVC에서 목록을 뷰에 전달하고 모델을 사용하여 표시하려면 어떻게해야합니까?

  26. 26

    prefetch_related를 사용하여 admin list_display에서 사용자 정의 열에 대한 관련 모델을 얻으려면 어떻게해야합니까?

  27. 27

    sklearn을 사용하여 의사 결정 트리 모델에서 내 예측의 정확도를 개선하려면 어떻게해야합니까?

  28. 28

    훈련 된 GloVe / word2vec 모델을 사용하여 기사에서 키워드를 추출하려면 어떻게해야합니까?

  29. 29

    IDataErrorInfo를 사용하여 부모 클래스에서 자식 개체의 유효성을 검사하려면 어떻게해야합니까?

뜨겁다태그

보관