Account.models 에서 사용한 필드
파이썬의 datetime.date instance 로 표현된다.
DateField.auto_now : 업데이트 일자 저장
DateField.auto_now_add : 최초 생성 일자 저장
auto_now=True
or auto_now_add = True
인 경우 editable=False
blank=True
가 자동으로 세팅됨.auto_now_add
, auto_now
, default
는 함께 사용할 수 없음(에러 반환)default = date.today
- from datetime.date.today()파이썬의 datetime.datetime instance 로 표현된다.
DateTimeField.auto_now : 업데이트 일시 저장
DateTimeField.auto_now_add : 최초 생성 일시 저장
auto_now_add
, auto_now
, default
는 함께 사용할 수 없음(에러 반환)default=timezone.now
- from django.utils.timezone.now()시간대 설정은 기본적으로 비활성화 되어 있어서, settings.py 에서 USE_TZ = True
를 설정해 주면 된다.
한국시간 설정하기
settings.py
LANGUAGE_CODE = 'ko-kr'
TIME_ZONE = 'Asia/Seoul'
USE_I18N = True
USE_L10N = True
USE_TZ = False # True 인 경우 디폴트로 미국 시간 사용. False 로 변경해 주어야 설정한 시간대로 변경됨.
참고 문서 : https://docs.djangoproject.com/en/3.1/topics/i18n/timezones/
EmailField(max_length=254, **options)
View 에서 email 유효성 검사를 위해, models 에서 CharField 와 같은 속성인 EmailField 를 사용한다. CharField 와 성질이 같으므로, max_length
도 함께 적어준다.
https://docs.djangoproject.com/en/3.1/ref/validators/#django.core.validators.EmailValidator
참고
has_agreed_marketing = models.BooleanField(default=False)