이전에 공부하던 부분부터 이어서 플레이할 수 있습니다.
이어서 보기 처음부터 보기

SHELL - 직접 DB에 요청을 하는 다른 방법

shell 실행 방법

운영체제에 따라

  • windows - powershell에서
  • unix/linux - 터미널에서
  1. manage.py가 있는 폴더로 이동 후
  2. python manage.py shell

DB에 요청하기

1. 기본 - 사용할 모델 클래스 import

>>> from elections.models import Candidate

2. 모든 객체 불러오기 - all()

>>> Candidate.objects.all()

3. 새 객체 생성하고 저장하기 - Model.save()

>>> new_candidate = Candidate(name = "루비오") #생성만 한 상태. 아직 저장되지 않음
>>> new_candidate.save() #new_candidate가 DB에 저장됨

4. 특정 조건을 만족하는 객체 불러오기 - filter()

>>> no1 = Candidate.objects.filter(party_number = 1) #party_number = 1인 객체를 리스트 형태로 return
>>> no1[0].party_number #리스트 형태이기 때문에 index로 접근
>>> no1[0].name

이번 동영상에서 쓰인 script 전체

>>> from elections.models import Candidate
>>> Candidate.objects.all()
[<Candidate: 힐러리>, <Candidate: 트럼프>]
>>> new_candidate = Candidate(name = "루비오")
>>> Candidate.objects.all() #아직 "루비오"가 DB에 저장되지 않음.
[<Candidate: 힐러리>, <Candidate: 트럼프>]
>>> new_candidate.save() # 이제 "루비오"가 DB에 저장되었습니다
>>> Candidate.objects.all()
[<Candidate: 힐러리>, <Candidate: 트럼프>, <Candidate: 루비오>]
>>> no1 = Candidate.objects.filter(party_number = 1)
>>> no1
[<Candidate: 힐러리>]
>>> no1[0].party_number
1
>>> no1[0].name
'힐러리'
>>> no1[0].introduction
'미국 최초의 여자 대통령이 되겠습니다.'