본문 바로가기
Backend/Django

장고 model

by 이은선 2023. 3. 5.
728x90
SMALL

admin

우리가 만들어준 table을 쉽게 확인할 수 있는 사이트가 바로 admin 사이트이다.

 

superuser 생성

 python manage.py createsuperuser 

* Admin 사이트에 들어가려면 Admin 유저를 만들어주어야 Admin 사이트에 접근이 가능하다.

 

admin에 모델 등록

<admin.py>

<models.py>

 

admin 사이트에서 직접 객체 생성해보기

 

()안의 값 1,2,...가 바로 해당 테이블/Class의 PK 값이다.

 

Blog object(pk)값이 아닌 제목을 띄우고 싶어서 models.py의 __str__함수를 커스터마이징해주었다.

 

장고 shell 이용하여 모델 사용법 익히기

▪︎ 장고 shell 키기

python manage.py shell

 

▪︎ 해당 모델 import 

from [객체].models import [class명]

 

장고 shell 이용하여 간단한 CRUD

▪︎ 모든 객체 출력해보기 CRUD

[class명].objects.all()

 

▪︎ 특정 객체 특정 속성값 보기 CRUD

나는 pk가 1인 Blog 모델의 created_at을 출력해주었다. 기준 시간이 우리나라가 아니라서 시간은 우리가 기대한 바와 다르게 나옴을 확인할 수 있다.

 

▪︎ 장고 shell을 이용해 객체 생성해보기 CRUD

제목이 "SHELL"이고, 내용이 "shell"인 객체를 생성해주었다.

 

▪︎ 장고 shell을 이용해 객체 업데이트해보기 CRUD

- pk가 1인 Blog객체에 instance라는 변수를 할당해준 후 제목을 "첫글"->"첫글 수정"으로 변경해주었다.

- 변경 후에는 save()를 통해 update 정보를 저장해주는 작업이 꼭 필요하다.

- 그 뒤, 내가 update하려는 정보가 잘 수정되었는지 확인하기 위해 모든 객체를 출력해주었다. 그 결과, 제목 수정이 잘 이루어진 것을 볼 수 있다.

 

▪︎ 장고 shell을 이용해 객체 삭제해보기 CRUD

 

- delete() 명령어를 통해 해당 객체를 삭제해주었다.

- 변수를 활용하여 삭제할 수도 있고, 두번째 줄처럼 변수를 할당하지 않고 pk=4인 객체를 불러와 삭제를 진행할 수도 있다.

- 마지막으로, 삭제가 잘 이루어졌나 보기 위해 모든 객체를 출력해주었다. 기존에 2개의 객체가 있었는데, 삭제 후에 남아있는 객체가 없는 것을 확인할 수 있다.

728x90
LIST

'Backend > Django' 카테고리의 다른 글

장고 CRUD  (0) 2023.03.05
장고 기본  (0) 2023.03.04
장고 기본 세팅(Mac)  (0) 2023.03.04