Django : Form

2024. 4. 1. 00:35Web, Django, DB

  • HTML ‘ form ‘

지금까지 사용자로부터 데이터를 받기 위해 활용한 방법

그러나 비정상적 혹은 악의적인 요청을 필터링 할 수 없다.

유효한 데이터인지 확인할 수 있는 방법이 필요하다.

 

유효성 검사 : 수집한 데이터가 정확하고 유효한지 확인하는 과정

 

  • Django Form

사용자 입력 데이터를 수집하고, 처리 및 유효성 검사를 수행하기 위한 도구

유효성 검사를 단순화하고 자동화 할 수 있는 기능을 제공한다.

 

  • Widgets

HTML ‘ input ‘ element 의 ‘표현’을 담당한다.

input 요소의 속성 및 출력되는 부분을 변경한다.

 

  • Form / ModelForm

Form ⇒ 사용자 입력 데이터를 DB에 저장하지 않을 때 (ex. 로그인)

ModelForm ⇒ 사용자 입력 데이터를 DB에 저장해야 할 때 (ex. 게시글 작성, 회원가입)

 

ModelForm 은 Model과 연결된 Form을 자동으로 생성해준다. ( Form + Model )

 

  • Meta class

ModelForm의 정보를 작성하는 곳

 

  • is_valid( )

여러 유효성 검사를 실행하고, 데이터가 유효한지 여부를 Boolean 으로 반환한다.

 

  • save( )

데이터베이스 객체를 만들고 저장

키워드 인자 instance 여부를 통해 생성할 지, 수정할 지를 결정한다.

 

⇒ Django Form 은 사용자로부터 데이터를 수집하고 처리해주어 HTML form 의 생성, 데이터 유효성 검사 및 처리를 쉽게 할 수 있도록 도와준다.

'Web, Django, DB' 카테고리의 다른 글

Django : Authentication system  (0) 2024.04.01
Django : Static  (0) 2024.04.01
Django : ORM with View  (0) 2024.03.31
Django : ORM  (0) 2024.03.29
Django : Model  (0) 2024.03.20