본문 바로가기
프로그래밍/PYTHON

장고 : 모델 2부

by AutoTechGuru 2023. 7. 21.
SMALL

장고는 파워풀하면서도 직관적인 파이썬 웹 프레임워크입니다. 이전 포스트에서는 장고의 모델을 사용하여 데이터베이스의 테이블을 생성하는 방법에 대해 배웠습니다. 이번 포스트에서는 모델을 사용하여 데이터를 생성, 조회, 수정, 삭제하는 방법에 대해 배우겠습니다.

장고 셸에서 모델 사용하기

장고에서는 셸에서 모델을 사용할 수 있습니다. 이를 이용하면, 데이터베이스에 직접적으로 접근하여 CRUD(Create, Read, Update, Delete) 작업을 수행할 수 있습니다. 장고 셸을 실행하려면 다음 명령어를 사용합니다.


(mysite) C:\projects\mysite>python manage.py shell

모델로 데이터 생성하기

데이터를 생성하려면, 먼저 해당 모델의 인스턴스를 생성합니다. 그리고 이 인스턴스의 필드를 채운 후 save 메서드를 호출하면 데이터베이스에 데이터가 저장됩니다.


>>> from pybo.models import Question, Answer
>>> from django.utils import timezone
>>> q = Question(subject='pybo가 무엇인가요?', content='pybo에 대해서 알고 싶습니다.', create_date=timezone.now())
>>> q.save()

위 예시에서는 Question 모델의 인스턴스를 생성하고, 이를 데이터베이스에 저장하였습니다.

모델로 데이터 조회하기

데이터를 조회하려면, 모델의 매니저인 objects를 사용합니다. objects 매니저는 모델의 데이터를 조회, 필터링, 정렬 등 다양한 작업을 할 수 있게 도와줍니다.


>>> Question.objects.all()

위 예시에서는 Question 모델의 모든 인스턴스를 조회하였습니다.

모델로 데이터 수정하기

데이터를 수정하려면, 먼저 해당 데이터를 조회하고 필요한 필드를 수정한 후 save 메서드를 호출하면 됩니다.


>>> q = Question.objects.get(id=1)
>>> q.subject = '변경된 제목'
>>> q.save()

위 예시에서는 id가 1인 Question 인스턴스의 제목을 변경하였습니다.

모델로 데이터 삭제하기

데이터를 삭제하려면, 먼저 해당 데이터를 조회하고 delete 메서드를 호출하면 됩니다.


>>> q = Question.objects.get(id=1)
>>> q.delete()

위 예시에서는 id가 1인 Question 인스턴스를 삭제하였습니다.

이렇게 장고의 모델을 사용하면 SQL 쿼리문을 직접 작성하지 않고도 데이터베이스를 쉽게 다룰 수 있습니다. 이 포스트를 통해 장고의 모델을 사용하여 데이터를 생성, 조회, 수정, 삭제하는 방법에 대해 배우셨습니다. 다음 포스트도 기대해 주세요¡ 장고 공부 파이팅!

LIST

'프로그래밍 > PYTHON' 카테고리의 다른 글

파이썬 팁 : 티스토리에 자동 포스팅  (4) 2023.07.22
장고 : 모델 1부  (0) 2023.07.21
장고 : url과 뷰  (0) 2023.07.21
장고 : 파이참 사용하기  (0) 2023.07.21
장고 : 프로젝트 생성하기  (0) 2023.07.21