Model 필드타입 정리

하루·2024년 4월 12일
  • CharField
    제한 문자열 삽입
    반드시 최대 길이를 max_length 옵션에 지정
    title = models.CharField(max_length=100, option)
  • TextField()
    텍스트 필드는 문자열과 비슷하게 보이지만, 대용량 문자열을 처리하는 필드이다.
    캐릭터 필드보다는 DB 용량을 많이 잡아 먹겠지만, 크기 제한을 굳이 할 필요가 없다.
    post = models.TextField(options)
    이미지를 텍스트로 변환해서 사용할 수 도있다.
  • IntegerField
    32비트의 정수형 필드
    사용 방법은 완전히 똑같지만 정수 사이즈에 따라 BigIntegerField, SmallIntegerField 사용가능
    default는 맨 처음 수정없이 저장될 경우의 값
    count = models.IntegerField(default=0, options)

  • DatetimeField
    시간과 관련된 값을 저장하는 필드
    DateField : 날짜만 저장하고 싶을 경우에 사용
    TimeField : 시간만 가질 경우 사용
    time = models.DateTimeField(auto_now=False, options)

  • FileField
    파일을 업로드하는 필드
    upload_to 옵션에 반드시 해당 경로를 지정해야 한다.
    폴더의 탐색은 사전에 settings.py에서 설정해놓았던 MEDIA_ROOT 경로부터 시작한다.
    upload = models.FileField(upload_to='uploads/', options)

  • ImageField
    파일 필드의 파생 클래스
    해당 파일이 이미지인지를 체크해준다.
    img = models.ImageField(upload_to='images/', options)

0개의 댓글