프로젝트 마무리 단계에서 내가 맡은 부분을 복습하다가 깨달은 아주 큰 실수 아닌 실수가 있다.
이번 프로젝트에서는 웹 프레임워크로 장고(Django)를 사용했는데 회원가입 부분에서 장고에서 제공해주는 UserCreationForm을 커스터마이징하여 UserForm을 작성했다. 그리고 사용자에게 데이터를 입력 받는 Form을 HTML에서 작성을 했다.
여태까지 장고(Django)에서 작성한 폼은 Model로 만든 데이터베이스를 채울 때에만 쓰는 줄 알고 HTML에 데이터를 입력받는 Form을 작성했다.
복습하면서 알게된 바로는 Form을 HTML에서 새로 작성할 필요가 없었다. 장고에서 이미 Form을 제공을 해주기 때문에 {{ form.as_table }}만으로도 데이터를 입력받는 Form이 완성되는 것이였다.
<form action="url mapping" method="post">
{% csrf_token %}
{{ form.as_table }}
<input type="submit" value="Submit">
</form>
해당 명령문을 실행하면 아래처럼 구현이 된다.
또한 장고의 Form을 이용시 장고에서 제공하는 valid 기능을 전부 사용이 가능하기 때문에 더 편했을 것이다.