[점프 투 장고]2장 폼에서 버튼의 "POST" 매개변수 관련 질문

이부분은 제가 css과 html등을 잘몰라서 하는 질문같습니다.
'..'은 게시판에 html에서 써져서 임의 추가하였습니다.

view.py에 if request.method == "POST": 가 있고
question_detail.html에는 <button type="submit" class="btn btn-primary">저장하기</button> 가 있습니다.

  1. <button type="submit" class="btn btn-primary"> 에서 url 경로를 지정해 주지 않았는데 어떻게 views.py에서 해당하는 메서드 예를들면 answer_create(request, question_id) 에 호출이 되나요? (물론 동일한 views.py에서 호출된 html 의 하위에 있는 html 이지만요)

  2. <button type="submit" class="btn btn-primary"> 에서 버튼을 누르면 views.py의 request.method 매게 변수로 POST가 들어오는것은 <button> 이라는 html(?)의 속성인가요? 아니면 "submit"라는 타입의 내부 클래스(?)에서 하는 건가요?

질문이 난해한것같네요..ㅋㅋ 이해되시면 답변 부탁드리겠습니다!

tklee.me 574

M 2020년 7월 15일 5:05 오후

목록으로
1개의 답변이 있습니다. 1 / 1 Page

HTML에서 POST요청을 하기 위해서는 <form> 이 필요합니다. submit 이라는 행위 자체가 form을 서버로 전송하는 것입니다.
위에 말씀하신 버튼을 클릭하면 submit이 되겠죠.

GET이 아닌 POST로 요청되는 것은 <form method="post"> 폼 태그에 "post"가 지정되었기 때문입니다.

그리고 마지막으로 폼이 전송되는 URL이 지정되지 않았을 경우 (보통 form태그에는 action 속성을 지정하고 이곳에 폼이 전송되는 URL을 적습니다.) 현재 브라우저 주소창에 보이는 URL이 폼 전송 URL이 됩니다.

지금 말씀드린것은 장고와는 상관없이 모든 웹 프로그램에 적용되는 HTML과 관계된 내용입니다.

도움이 되셨기를 바랍니다.

박응용

2020년 7월 15일 5:10 오후

아 큰도움되었습니다. 정말감사합니다. 많은 시간이 절약되었습니다 ㅠㅠ - tklee.me님, 2020년 7월 15일 5:21 오후 추천 , 대댓글