Python “关系”处的编程错误;xxx“;模板呈现期间不存在/错误

Python “关系”处的编程错误;xxx“;模板呈现期间不存在/错误,python,django,heroku,Python,Django,Heroku,我正在heroku上用django构建一些东西,我得到了“模板渲染期间出错”错误,但仅在heroku上。在本地运行时,一切正常。此外,在呈现页面之前,我正在打印我试图呈现的字段,我看到它存在并且有效。模板非常简单: 这是URL.py from django.conf.urls import patterns, include, url from django.contrib import admin from perfil import views urlpatterns = pattern

我正在heroku上用django构建一些东西,我得到了“模板渲染期间出错”错误,但仅在heroku上。在本地运行时,一切正常。此外,在呈现页面之前,我正在打印我试图呈现的字段,我看到它存在并且有效。模板非常简单:

这是URL.py

from django.conf.urls import patterns, include, url
from django.contrib import admin
from perfil import views


urlpatterns = patterns('',


    url(r'^admin/', include(admin.site.urls)),
    url(r'^$', views.lista_dato),
)
这是models.py

from django.db import models
from django.utils import timezone

# Create your models here.

class Dato(models.Model):
    #author = models.ForeignKey('auth.User')
    nombre = models.CharField(max_length=50)
    nacimiento = models.DateField(blank=True, null=True)

    cedula = models.IntegerField(max_length=50)
    tarjeta_profesional = models.CharField(max_length=50)
    celular = models.CharField(max_length=100)
    email = models.EmailField(max_length=100)
    descripcion = models.TextField()
    estudio = models.TextField()
    experiencia_laboral = models.TextField()
    fecha_publicar = models.DateTimeField(blank=True, null=True)

    def publicar(self):
        self.fecha_publicar = timezone.now()
        self.save()

    def _str_(self):
        return self.nombre
这是lista_dato.html

{% extends 'perfil/base.html' %}
{% block content %}

{% for dato in datos %}
<div class="page-header">
<h1><center><a href="https://www.facebook.com/john.e.barbosa">{{ dato.nombre }}</a></center></h1>
</div> 
<div>
<p><h2>Cedula de Ciudadania:</h2> {{ dato.cedula }}</p>
<p><h2>Tarjeta Profesional:</h2> {{ dato.tarjeta_profesional }}</p>
<p><h2>Celular:</h2> {{ dato.celular }}</p>
<p><h2>Email:</h2> {{ dato.email }}</p>
</div>

<div class="post">
<div class="date">Ultima Actualizacion
{{ dato.fecha_publicar }}
</div>
<h1>DESCRIPCIÓN</h1>
<p>{{ dato.descripcion }}</p>
<h1>FORMACIÓN</h1>
<p>{{ dato.estudio}}</p>
<h1>EXPERIENCIA LABORAL</h1>
<p>{{ dato.experiencia_laboral}}</p>
</div>
{% endfor %}
{% endblock content %}


这一错误出现在heroku的本地环境中,而不是。

您可能没有运行迁移(您在本地执行了迁移)。试着通过

heroku run "python manage.py migrate"

然后重试

是否有管理面板,然后检查字段是否存在。.在视图中打印数据,如果为空,则在for循环之前在模板中添加if条件。perfil_数据在哪里定义?您是否在服务器上运行迁移?管理面板在本地运行良好,在heroku中,只允许calve并输入用户,然后显示相同的错误。perfil_Dato从不定义它,它不是我创建的变量,我认为它是数据库生成的内部真实值。乌斯曼:我是Python、Django和Heroku的新手,请您向我解释如何执行条件if。谢谢你的评论。
from django.shortcuts import render
from django.utils import timezone
from .models import Dato
# Create your views here.

def lista_dato(request):
    datos = Dato.objects.filter(fecha_publicar__lte=timezone.now()).order_by('fecha_publicar')
    return render(request, 'perfil/lista_dato.html', {'datos': datos})
heroku run "python manage.py migrate"