-
TIL.69 FloatField 활용하기TIL/Django 2020. 12. 16. 21:18728x90
장고를 이용해 데이터모델링을 구성할때
아래와 같은 평점은 어떻게 구현 할 수 있을까?
따라서 리뷰에서 평점 모델링을 구성한다고 했을 경우 아래의 예시와 같이 작성할 수 있다.
import json from django.views import View class ReView(View): rate = models.IntegerField() class Meta: db_table = 'reviews'
평점은 대략 0.5 ~ 5.0까지의 실수! 로 표현되는게 일반적이다.
따라서 소수 첫번째자리 까리 표현할 수 있으며 여기서 IntegerField 사용은 어울리지 않다
아래와 같이 FloatField를 사용하며 Djanog의 validators 모듈을 사용하여 평점의 범위를 지정해 줄 수 있다.
import json from django.views import View from django.core.validators import MinValueValidator, MaxValueValidator class ReView(View): rate = models.FloatField(validators=[MinvalueValidator(0,5),MaxValueValidator(5.0)]) class Meta: db_table = 'reviews'
평점이라는 정보를 DB에 저장해야하는 경우, validators를 사용하도록 하자!
728x90'TIL > Django' 카테고리의 다른 글
TIL.70 auto_now VS auto_now_add 차이 (0) 2020.12.17 TIL.68 __str__은 무엇일까 (0) 2020.12.15 TIL.64 (Token)_Authentication (0) 2020.12.11 TIL.58 Django Rest Framework_serializer(직렬화) (0) 2020.12.06 TIL.57 null=True 와 blank=True 의 차이(Django) (0) 2020.12.05