📢 공지사항
home

CreateView를 통한 회원가입 구현 (1)

1.
views.py에 class기반의 CreateView 만들어주기
구조 보는 단축키 ctrl + B
import를 위한 단축키 alt + enter
# Create your views here. from django.urls import reverse, reverse_lazy from django.views.generic import CreateView class AccountCreateView(CreateView): # User라는 장고에서 기본적으로 사용하는 model사용 model = User # form 지정 form_class = UserCreationForm # 연결 성공시 이동하는 페이지 지정 # reverse는 그대로 class에서 사용할 수 없기때문에, class형 view에서는 reverse_lazy # reverse는 function형 view에서 사용 success_url = reverse_lazy('accountapp:hello_world') template_name = 'accountapp/create.html'
Python
복사
2.
urls.py의 url_pattern부분에 우리가 만든 createview를 인식할 수 있게 추가해준다.
# class view에서는 as_view()를 사용해서 함수형 처럼 받아준다. path('create/', AccountCreateView.as_view(), name='create')
Python
복사
3.
./accountapp/templates/accountapp/create.html파일 생성
{% extends 'base.html' %} {% block content %} <div style="text-align: center"> <form action="{% url 'accountapp:create' %}" method="post"> {% csrf_token %} <!-- 우리가 지정한 form 파일을 그대로 받아와준다. --> {{ form }} <input type = "submit" class = "btn btn-primary"> </form> </div> {% endblock %}
HTML
복사