简体   繁体   English

django渲染模板问题

[英]django rendering template issue

I'm just built my django project but have some problem. 我刚刚建立了django项目,但遇到了一些问题。 I want to display title that is in Academy. 我想显示学院中的标题。 When I run python manage.py runserver everything is okay but the title is not displayed. 当我运行python manage.py runserver一切正常,但标题未显示。 I don't know what the problem is. 我不知道问题是什么。

class.html class.html

{% extends "base.html" %}
{% block content %}
    <div>
        <div style="margin-top: 200px;">
        </div>
        {% for academy in academys %}
            <h3>{{ academy.title }}</h3>
        {% endfor %}
    </div>
{% endblock %}

urls.py urls.py

...
url(r'^academy/class', 'academy.views.class', name='class'),

views.py views.py

from django.shortcuts import render, Http404
from .models import Academy

def class(request):
    template = 'academy/class.html'
    try:        
        academys = Academy.objects.all()
        context = {'academy': academys}

    except Academy.DoesNotExit:
        raise Http404

    if request.user.is_authenticated():
        return render(request, template, context)
    else:
        return HttpResponseRedirect("/account/login/")

models.py models.py

...
class Academy(models.Model):
    title = models.CharField(max_length=50)

    def __unicode__(self):
        return self.title

Your context dictionary key is incorrect. 您的上下文词典密钥不正确。 Instead of 代替

context = {'academy': academys} 

type 类型

 context = {'academys': academys} 

您在上下文中通过的是“学院”,而不是“学院”

context={'academys ': academys}

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM