无法在Django中显示数据库数据

时间:2018-03-11 12:12:44

标签: python django

我正在图书馆网站上工作,我想在其中显示数据库中的数据,即书名和描述。但我无法做到这一点。这是我的代码

views.py

from django.shortcuts import render
from .models import *
def index(request):
   book_list = Book.objects.all()
   return render(request,template_name='index.html', context={'book_list':book_list})

的index.html

{% extends "base_generic.html" %}
{% block new_books %}
{% for b in book_list %}
    <div class="card">
        <img class="card-img-top" src=".." alt="Image">
        <div class="card-body">
            <h5 class="card-title">{{ book_list }} </h5>
            <p class="card-text">Hello this is card text</p>
            <a class="btn btn-primary">View this book</a>
        </div>
    </div>
{% endfor %}
{% endblock %}

1 个答案:

答案 0 :(得分:4)

您应该在b循环中使用book_list变量而不是for

如果您的Book模型包含title字段,则代码可能如下所示:

{% extends "base_generic.html" %}
{% block new_books %}
{% for b in book_list %}
    <div class="card">
        <img class="card-img-top" src=".." alt="Image">
        <div class="card-body">
            <h5 class="card-title">{{ b.title }} </h5>
            <p class="card-text">Hello this is card text</p>
            <a class="btn btn-primary">View this book</a>
        </div>
    </div>
{% endfor %}
{% endblock %}