당신은 멋쟁이, 우리는 장고쟁이~

0%

Django Models 13편 - Model Attributes

Model Attributes


모델의 가장 중요한 속성은 Manager 입니다.


Manager 는

Django 데이터베이스 쿼리 운영을 제공 하는 인터페이스로,

데이터베이스에서 인스턴스들을 검색할때 사용 됩니다.

만약, 사용자 정의 Manager 가 정의되어 있지 않다면, 기본값으로, Manager 의 이름은 objects 입니다.


Manager 는 모델 클래스들을 통해서만 접근 가능합니다. 모델 인스턴스로는 접근이 가능하지 않습니다.


Manager 의 사용


우리가 Django 에서 해당 모델의 데이터베이스 모든 데이터를 조회할때에는, 아래와 같이 ORM 을 작성합니다.


이때 사용되는, objects 가 Manager의 기본 이름입니다.

<model명>.objects.all()


예시를 들어보자면,


1
2
3
4
from django.db import models 

class Student(models.Model):
name = models.CharField(max_length=50, verbose_name='학생 이름')

위의 Student 모델이 있다고 가정할때에, 해당 모델의 데이터베이스를 조회하는 명령어들은 아래와 같습니다.


1
2
Student.objects.all()   # Student 의 모든 객체를 조회 
Student.objects.get(name='장고쟁이') # 이름이 장고쟁이인 Student 를 찾음