Flask에서 제출된 양식 값을 검색하는 방법: request.form이 비어 있는 이유는 무엇입니까?

DDD
풀어 주다: 2024-10-30 03:53:02
원래의
687명이 탐색했습니다.

How to Retrieve Submitted Form Values in Flask: Why is request.form Empty?

Flask에서 양식 값 전달 및 액세스

웹 기능을 개발할 때 양식 제출을 처리하는 것이 중요합니다. Flask에서 이 프로세스를 용이하게 하기 위해 제출된 양식 값을 검색하는 데 문제가 발생할 수 있습니다. 이 문서에서는 HTML 양식에서 값을 제출하고 Flask 보기 내에서 해당 값에 액세스하는 방법을 이해하는 데 중점을 둡니다.

문제 설명

다음 HTML 양식을 고려하세요.

<code class="html"><form method="POST">
  <input id="my_input" type="text" value="{{ email }}">
  <input id="my_submit" type="submit" value="Submit">
</form></code>
로그인 후 복사

그리고 해당 Flask 경로:

<code class="python">@app.route('/page', methods=['POST', 'GET'])
def get_page():
    if request.method == 'POST':
        print(request.form)  # prints ImmutableMultiDict([])
        print(request.form['my_input'])  # raises 400 error
    return render_template('page.html')</code>
로그인 후 복사

양식을 제출할 때 request.form이 비어 있는 것을 발견할 수 있습니다. my_input 값을 직접 검색하려고 시도하면 400 오류가 발생합니다.

해결책

문제의 핵심은 입력 필드에 이름 속성이 없다는 것입니다. Flask가 양식을 올바르게 처리하려면 각 입력에 request.form의 원하는 키에 해당하는 이름 속성이 있어야 합니다. 이 경우 다음 수정으로 문제가 해결됩니다.

<code class="html"><input name="my_input" id="my_input" type="text" value="{{ email }}"></code>
로그인 후 복사

name 속성을 추가하면 입력 값이 "my_input" 키를 사용하여 서버에 제출됩니다. 결과적으로 Flask 보기 내에서 값을 원활하게 검색할 수 있습니다.

위 내용은 Flask에서 제출된 양식 값을 검색하는 방법: request.form이 비어 있는 이유는 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿