FORM 사용 사례를 Login Form을 예로 들어 작성해 보자
FORM을 이용하는 다른 기능들도 아래와 같은 구조를 활용하여 변경하여 사용하면 된다.
* LoginForm Class
class LoginForm(forms.Form): username = forms.CharField(max_length=32) password = forms.CharField()
1. 기본 FORM 전달 {{ form }}
2. 폼내 필드 표시 커스터마이징 : {% for field in form %} ... {% endfor %}
{% for field in form %} <div class="form-group"> <labl for=""></labl> <input type="" class="form-control" id="" placeholder="" name=""> </div> {% endfor %}
3. 폼필드 상세정보 반영하기
[forms.py]
from django import forms class LoginForm(forms.Form): username = forms.CharField(max_length=32, label="사용자 이름") password = forms.CharField(widget=forms.PasswordInput(), label="비밀번호")
[login.html]
<form method="POST" action=""> {% csrf_token %} {% for field in form %} <div class="form-group"> <labl for="{{ field.id_for_label }}">{{ field.label }}</labl> <input type="{{ field.field.widget.input_type }}" class="form-control" id="{{ field.id_for_label }}" placeholder="{{ field.label }}" name="{{ field.name }}"> </div> {% endfor %} <button class="btn btn-primary">로그인</button> </form>
'프로그래밍 > Python' 카테고리의 다른 글
[Django] 장고에서 패스워드 체크 함수 check_password 사용하기 (0) | 2021.01.03 |
---|---|
[Django] HTML 템플릿내에서 Form Class의 is_valid호출시 오류를 받아 처리하기 (0) | 2021.01.03 |
[Django] Form 사용 - 매커니즘 (0) | 2021.01.02 |
장고[Django] 암호화 인증키 지정 csrf_token (0) | 2020.12.28 |
장고[Django] HTML-Templates Workflow (0) | 2020.12.28 |