일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
- Baekjoon
- 파이썬
- CSS
- PYTHON
- Django
- web
- js
- 파이썬 알고리즘
- django rest framework
- javascript
- 알고리즘 연습
- AWS
- form
- Algorithm
- DRF
- 알고리즘 풀이
- django widget
- 알고리즘
- java
- 백준
- c++
- es6
- react
- django ORM
- 장고
- MAC
- API
- 알고리즘 문제
- Git
- HTML
- Today
- Total
수학과의 좌충우돌 프로그래밍
[Django] 05. queryset 과 method 본문
안녕하세요 강민성입니다.
저번 시간에는 models에 대해서 알아보았습니다.
models 에서는 어떤 데이터를 다룰지 알려주는 법과
이를 데이터베이스와 연동하는 것도 알아보았습니다.
이번에는 이 데이터를 어떻게 화면에 가져올지 알아보도록 하겠습니다.
queryset 과 method
아쉽게도 models 에 있는 내용을 화면에 바로 가져오지는 못합니다.
중간에 views 를 거쳐서 가져와야 하는데 그 과정을 알아보도록 하겠습니다.
먼저 저번 시간에 만들었던 model.py 부터 확인해보겠습니다.
자세한 설명은 여기를 클릭해주세요.
이번에는 모델의 내용을 불러오기 위해서 views.py를 작성해도록 하겠습니다.
models 에 있는 Blog 클래스를 먼저 import 해주고,
그 Blog에서 objects 메소드를 사용하여 모델의 객체들을 불러옵니다.
이 때 전달받은 객체를 쿼리셋이라고 합니다.
그리고 기본적인 설정을 하고 넘어가겠습니다.
blog 앱 밑에 templates를 만들어주고 그 안에 home.html 을 만들어주고
탬플릿 언어를 통해 views에서 넘겨준 blogs를 넣어주었습니다.
그리고 url도 연결해준 결과,
예상과는 좀 다른 결과가 나왔습니다.
우리가 원하는 결과는 한 객체에 대한 세부 정보입니다.
예를 들면 blog 글의 제목, 내용 등이 되겠죠.
이렇게 세부적인 정보를 얻기 위해서는 쿼리셋 메소드 를 사용해야 합니다.
물론 세부적인 정보 뿐만 아니라 여러 특별한 기능도 수행이 가능합니다.
이를 알아보도록 하겠습니다.
먼저 home.html 을 다음과 같이 수정하였습니다.
all 메소드를 사용하여 모든 객체들을 불러오고 blog는 이를 순회하며,
title, pub_date, body를 나타내게 됩니다.
그 결과는 다음과 같습니다.
글이 늘어나면 아래로 계속해서 생길 것입니다.
마무리
간단하게 퀴리셋과 이 메소드의 활용에 대해서 알아보았습니다.
메소드들은 무궁무진하게 많으니
필요에 따라 찾아서 사용하시길 바랍니다 :)
'웹프로그래밍 > Django' 카테고리의 다른 글
[Django] 07. 글쓰는 기능 구현하기 (2) | 2019.02.25 |
---|---|
[Django] 06.pk, path converter, get_object_or_404란? (18) | 2019.02.24 |
[Django] 04. model 과 admin (6) | 2019.02.14 |
[Django] 템플릿 언어에 대해 알아보자. (1) | 2019.02.14 |
[Django] 03. 단어 수 세는 프로젝트 (4) | 2019.02.13 |