簡體   English   中英

為什么顯示不正確?

[英]Why is this not displaying properly?

我真的不確定為什么不顯示帶超鏈接的樂隊名稱,出現的只是標題“ Band List”,下面沒有任何內容。

數據庫中有數據,但是什么也沒有顯示。

這是模板。

{% block content %}
<h1>Band List</h1>
{% for band in bands %}
{{ band.id }}
<h3><a href='/bandlist/{{band.id}}'>{{ band.bandname }}</a></h3>
{% endfor %}

{% endblock %}

這是我的views.py

from django.http import HttpResponse
from django.shortcuts import get_object_or_404, render, render_to_response, redirect
from django.contrib.auth.decorators import login_required
from django.contrib.auth import login, authenticate
from django.shortcuts import render, redirect
from polls.forms import NormalSignUpForm, VenueSignUpForm, BLSignUpForm, BMSignUpForm, ProfileForm
from django.contrib.auth import get_user_model
from django.views.generic.detail import SingleObjectMixin
from django.views.generic import UpdateView, TemplateView
from django.utils.decorators import method_decorator
from django.db.models.signals import post_save
from .models import *
from polls.models import User
from django.http import Http404

def bandlist(request):
    query = Band.objects.all()
    print(query)
    args =  {'query': query}
    return render(request, 'bandlist.html', args)

這是我的模型

class Band(models.Model):
    bandname = models.CharField(max_length = 50)   
    description = models.TextField()
    picture = models.ImageField()
    members = models.ManyToManyField('User')

    def __str__(self):
        return self.bandname

如果有人可以澄清這一點,那將真的很有幫助,謝謝。

此行return render(request, 'bandlist.html', args)將名為argscontext對象發送到模板。 因此,您的模板代碼應具有:

{% for band in query %}
    {{ band.id }}
    <h3><a href='/bandlist/{{band.id}}'>{{ band.bandname }}</a></h3>
{% endfor %}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM