[점프 투 장고] QuestionForm 관련 질문 드립니다.

안녕하세요.

C:/projects/mysite/pybo/view.py의 question_create함수에 의해서
QuestionForm(request.POST)가 C:/projects/mysite/templates/pybo/question_form.html로 전달되어
{% csrf_token %}이하의 오류여부 확인 코드를 실행하는 것으로 이해했습니다.

그럼 eC:/projects/mysite/pybo/view.py의 question_create함수의 else 구문에 의해 전달되는 QuestionForm()은
subject와 content 그리고 create_date의 데이터가 없이 전달되어도
{% csrf_token %}이하의 오류여부 확인 코드를 실행에 의해 오류로 인식이 되지 않는 건가요?
비어있는 QuestionForm()를 전달했는데 {% csrf_token %}이하의 오류여부 확인 코드에 의해 오류가 인식되지 않는 이유가 궁금합니다.

감사합니다!!

sonsee 206

2023년 5월 4일 1:33 오후

form의 오류를 체크하는 코드는 form.is_valid() 입니다. 이 코드는 POST 요청일 경우에만 실행됩니다. 말씀하신 else 구문은 POST 요청이 아닌 GET 요청이라 폼에 대한 오류를 체크하지 않습니다. - 박응용님, 2023년 5월 4일 1:55 오후 추천 , 대댓글
@박응용님 제가 설명이 부족했습니다 ㅠㅠ QuestionForm()에 의해서 question_form.html의 {% csrf_token %} 이하에 있는 코드가 실행되는지 문의 드립니다. 빠른 답변 정말 감사합니다 - sonsee님, 2023년 5월 4일 2:32 오후 추천 , 대댓글
@sonsee님 실행되지만 위에 말씀드린것 처럼 is_valid가 실행되지 않기 때문에 {% if form.errors %} 블록은 false가 되어 실행되지 않습니다. - 박응용님, 2023년 5월 4일 2:51 오후 추천 , 대댓글
@박응용님 감사 합니다! - sonsee님, 2023년 5월 9일 11:45 오전 추천 , 대댓글
목록으로