python django 게시판 만들기 - view함수에 데이터를 가져와 html에 띄우기
model, admin 설정 : https://integer-ji.tistory.com/89
언제나 시작은 가상 환경 실행, 디렉터리 이동
source myvenv/Scripts/activate
cd crudproject/
데이터 추가하기
admin 페이지에 데이터를 추가해 줍니다.
views.py home 함수 수정
from django.shortcuts import render
from .models import Blog
# Create your views here.
def home(request):
blogs = Blog.objects
return render(request, 'home.html', {'blogs': blogs})
models에서 Blog를 import 해옵니다.
import한 Blog를 home 함수에서 blogs 객체를 넣어줍니다.
home.html 객체 가져오기
{{blogs}}
먼저 views.py에서 명시해준 blogs 그대로 가져와 봅니다.
{{blogs}} 추가
기존에 있던 워드카운트와 함께 crudapp.Blog.objects가 출력됩니다.
Blog 클래스에서 objects만 가져오네요
이제 이걸
{{blogs.all}}
blogs.all로 바꾼다면
blogs에 있는 객체들 모두가 출력됩니다.
여기서 title로 출력되는 이유는 models.py에서 title를 return 해줬기 때문입니다.
이렇게 객체들을 가져왔는데 이걸 게시글 형태로 바꿔보겠습니다.
for문을 사용해 게시글 형태로 출력하기
{% for blog in blogs.all %}
<h1>{{ blog.title }}</h1>
<p>{{ blog.pub_date }}</p>
<p>{{ blog.body }}</p>
{% endfor %}
for문을 사용해 blogs의 모든 객체를 blog에 담고
첫번째는 title, 두 번째는 시간 그리고 본문을 가져오고 for문을 끝내줍니다.
확인해보면
admin페이지에서 올린 글들을 확인할 수 있습니다.
git push
git init
git add .
git commit -m "코멘트"
git push origin master
- 끝 -
---
다음 시간에는 불러온 게시물의 본문을 일정부분만 불러와 detail page로 넘어가는 기능을 시작하겠습니다.
'코딩공부 > Python Django' 카테고리의 다른 글
[django 실습] 게시판 만들기 - 한글 설정, 한국 시간 설정, 데이터 자르기, 정렬하기 (0) | 2020.02.19 |
---|---|
[django 실습] 게시판 만들기 - detail page 만들기 (0) | 2020.02.18 |
[django 실습] 게시판 만들기 - model, admin 설정 (0) | 2020.02.16 |
[django 실습] Word Count 만들기 ( 2 ) (2) | 2020.02.15 |
[django] 실습 Word Count 만들기 ( 1 ) (0) | 2020.02.15 |