ビューにモデルをインポート
- template⇔view⇔modelの関係(viewはモデルとテンプレートの橋渡し的な役割)
- Djangoの
TemplateはMVCモデルのViewに該当する
(appName)/views.py
from django.shortcuts import render
from .models import Post★#新たにモデルをインクルード
クエリセットを操作する
(appName)/views.py
from django.shortcuts import render
from django.utils import timezone★#追加
from .models import Post
def post(request):
posts = Post.objects.all()#posts変数でクエリセットにアクセスできる
return render(request, '(appname)/post.html', {'posts':posts})★#データを詰め込んでtemplateに返す
補足
{'posts'→templateでアクセスするための名前
:posts→クエリセット}
テンプレートファイルのパス
appName/templates/appName/post_list.html
試しに表示できるか確認↓
appName/templates/appName/post_list.html
{%for post in posts%}★postsはクエリセット
<div>
<h2><a href="">{{ post.title }}</a></h2>
</div>
{% endfor %}
参考記事