Python “关系”处的编程错误;xxx“;模板呈现期间不存在/错误
我正在heroku上用django构建一些东西,我得到了“模板渲染期间出错”错误,但仅在heroku上。在本地运行时,一切正常。此外,在呈现页面之前,我正在打印我试图呈现的字段,我看到它存在并且有效。模板非常简单: 这是URL.pyPython “关系”处的编程错误;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
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"