반응형
# models.py
...
from django.core.exceptions import validationError
def validate_email(value):
if not "@" in value:
raise ValidationError("Not a valid email")
else:
return value
def validate_kwon(value):
if not "kwon" in value:
raise ValidationError("Not Kwon!")
else:
return value
class Post(models.Model):
email = models.CharField(max_length=240, validators=[validate_email, validate_kwon] null=True, blank=True)
#해당 email 필드는 "@" 이가 없거나 문자열에 "kwon" 이 들어가지 않으면 오류를 발생 시킨다.
위와 같이 validate 메소드를 만들어서, valdation을 적용하고 싶은 모델 필드에 리스트의 요소로 추가 시켜주면된다.
위의 방법은 models.py에서 validation 메소드를 적어놨는데, 대개는 validation.py를 따로 만들고, validation 메소드 끼리 모아둔다.
반응형
'Legacy(~18.10) > Django' 카테고리의 다른 글
[Django Tips]save 메소드 오버라이딩 (1) | 2018.09.27 |
---|---|
[Tutorial] Django 공식튜토리얼 - 모델생성과 관리자 페이지 (0) | 2018.09.07 |
[Tutorials] Django공식튜토리얼 - 프로젝트 생성과 간단한 뷰 만들기 (0) | 2018.09.06 |
[Tutorials] Django공식튜토리얼 - 개발환경구축 (0) | 2018.09.06 |
[Django Model] 쿼리만들기 - 1 (0) | 2018.08.29 |