본문 바로가기
  • 기억보단 기록을..

Model3

Custom Manager, QuerySet Manager Django 모델에서 데이터베이스와 상호 작용하는 인터페이스 기본적으로 Manager는 Model.objects 속성을 통해 사용할 수 있다. Django 모델마다 기본적으로 사용되는 기본 관리자는 django.db.models.Manager 이다. from django.db import models class DocumentManager(models.Manager): def pdfs(self): return self.filter(file_type='pdf') def smaller_than(self, size): return self.filter(size__lt=size) class Document(models.Model): name = models.CharField(max_.. 2022. 4. 5.
[DRF] ModelSerializer 사용법 (feat. method-hyperlink) DRF ModelSerializers 1. ModelSerializer 란? 이전에는 Serializer를 만들 때, 각 필드를 하나하나 정의해 주었다. 마치 모델을 다시 한 번 작성하는 것 같은 불편함이 있었다. 이 문제를 해결해 주는 것이 ModelSerializer이다. ModelSerializer는 크게 아래와 같은 3가지 기능을 제공한다. 주는 편리함이 워낙 크기에 Base Serializer보다 훨씬 생산성을 높일 수 있다. (의존하고 있는 모델에 기반해서) Serializer 필드를 자동으로 만들어 줌 Serializer를 위한 validator 제공 : ex) unique_together_validators .create(), .update() 함수 기본으로 제공하여 다시 만들 필요 없음 .. 2021. 1. 20.
[Django] models - class Meta models.py DB 스키마 지정하는 파일 1. 다루게 될 내용 meta 내부 클래스 옵션 db_table verbose_name verbose_name_plural ordering 2. 샘플 코드 # models.py class UserKeyword(models.Model): user = models.ForeignKey(User, on_delete=models.CASCADE) kid = models.AutoField(primary_key=True) keyword = models.CharField(max_length=128, verbose_name="키워드", null=False) stop_words = models.CharField(max_length=128, verbose_name="제외어", nu.. 2021. 1. 12.