당신은 멋쟁이, 우리는 장고쟁이~

0%

Django Forms 2편 - HTML FORMS

HTML FORMS


HTML 에서 form 은 <form></form> 안에 있는 요소들의 집합입니다.


이는 방문자들이 text 를 입력하고, 옵션을 선택하고, 객체들을 관리하고 혹은 제어하게 만들어 줍니다.


그리고 나서, 해당 정보를 다시 서버로 보내줄수도 있습니다.


이러한 몇가지 폼 인터페이스 요소들은 (예, text input, 혹은 checkboxes) HTML 자체에 내장 되어 있습니다만. 다른것들은 훨씬 더 복잡합니다. 예를들면, 보통 JavaScript 와 CSS 그리고 HTML 을 사용하여 날짜선택 팝업 혹은 슬라이더, 그리고 제어를 조종하는 <input> 요소들이 그렇습니다.



Form 이 지정해줘야할 2가지


form 은 대부분 아래 두가지를 지정해주어야 합니다.


  1. where? 사용자가 입력한 데이터가 어디로 반환 되어야 하는지
  2. how? 어떠한 HTTP Method 로 데이터가 반환 되어야 하는지

예시를 들자면, Django Admin 의 로그인 폼은 몇가지 아래의 <input> 요소들을 가지고 있습니다.


  1. username 을 위한 type="text" 라는 것이고,

  2. 다른 하나는, password 를 위한 input

  3. 마지막으로, 로그인을 진행하는 버튼을 위한 type=”submit” 을 가지고 있습니다.


그리고, 어드민에는 Django 가 입력값을 받은 다음에 무엇을 해야하는지 결정하기 위해, 사용자가 볼수 없는 숨겨진 텍스트 필드들도 존재합니다.


또한, 브라우저에 폼 데이터가 어떤 URL 로 보내져야 하는지, <form>의 action 속성에다가 URL 을 지정해 줍니다 /admin/. 그리고, 폼 데이터는, method 속성에 지정된 HTTP 동작을 통해서 보내집니다 (예, POST)


1
<input type="submit" value="Log in">

위 요소가 실행되면, 데이터는 /admin/ 에 반환됩니다.