前提・実現したいこと
Djangoでデータベース(model)の中身をテンプレートで表示したいです。
発生している問題・エラーメッセージ
ブラウザでの表示が下記のようになってしまう。(3つデータベース上にデータがあるので、表示数としては合っています。)
Todoリスト一覧 {list.title} {list.title} {list.title}
該当のソースコード
models.py
from django.db import models # Create your models here. class TodoModel(models.Model): title = models.CharField(max_length=100) content = models.TextField() plc = models.ForeignKey( 'auth.User', on_delete=models.CASCADE )
views.py
from django.shortcuts import render from .models import TodoModel from django.views.generic import ListView # Create your views here. class index(ListView): model = TodoModel template_name = 'list.html'
base.html
<html> <head> <title>ToDoリスト</title> <body> <header> <div class='header'> {% block header %} {% endblock header %} </div> </header> <div class='main'> {% block content %} {% endblock content %} </div> </bocy> </html>
list.html
{% extends 'base.html' %} {% block header %} <h1>Todoリスト一覧</h1> {% endblock header %} {% block content %} {% for list in object_list %} <p>{list.title}</p> {% endfor %} {%endblock content %}
試したこと
adminサイトでモデルの数を増減すると、合わせて{list.title}の数も変わるので、あとは表示方法だけだと思います。
テンプレートがモデルをどのように取得しているのか調べましたがよくわかりませんでした。
補足情報(FW/ツールのバージョンなど)
Django3 Python3.8
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。