我是python编程和django的新手,我得到了基础知识。我用两个应用程序创建了一个项目,包括家庭和视频。在我的视频models.py中,我有以下数据:
from video.models import Video
def display_video(request):
video_list = Video.objects.all()
context = {'video_list': video_list}
return render(request, 'home/home.html', context)
我想在views.py中的家庭应用程序中执行此操作,例如在html页面中显示数据,目前设置如下:
{% if video_list %}
{% for video in video_list %}
<p>{{ video.name }}</p>
<p>{{ video.description }}</p>
{% endfor %}
{% else %}
<p>no videos to display</p>
{% endif %}
在我的home.html中
socket.io.js
我的home.html始终返回&#34;没有要显示的视频&#34;
但是当我在我的视频应用中查询Video.objects.all()时,它会找到2个对象。任何帮助表示赞赏。
答案 0 :(得分:0)
在设置中,请检查以下内容。
TEMPLATES = [
{
'BACKEND': 'django.template.backends.django.DjangoTemplates',
'DIRS': [],
'APP_DIRS': True,
'OPTIONS': {
'context_processors': [
'django.template.context_processors.debug',
'django.template.context_processors.request',
'django.contrib.auth.context_processors.auth',
'django.contrib.messages.context_processors.messages',
],
},
},
]
答案 1 :(得分:0)
我决定删除该项目并开始全新,但这次我使用了类视图而不是函数视图。我不确定为什么它没有运行但是使用类视图它就像一个魅力。所以类视图中的等价物尽可能简单。
from video.models import Video
class IndexView(generic.ListView):
template_name = 'home/index.html'
context_object_name = 'top_three'
def get_queryset(self):
return Video.objects.all()[:3]