繁体   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