首页 > 解决方案 > 没有显示项目列表时面临的 Django 错误

问题描述

我正在 Django 中创建此选项卡,并希望它显示 10 个 youtube 搜索的列表,但它只显示下面一个是我的 view.py youtube 方法的代码,下面是我的模板部分,有人可以帮助我吗?将显示我的前十个搜索列表,但它只显示 1 我不知道为什么

def youtube(request):
    if request.method=="POST":
        form = DashboardForm(request.POST)
        text = request.POST['text']
        video = VideosSearch(text,limit=10)
        result_list=[]
        for i in video.result()['result']:
            result_dict={
                'input':text,
                'title':i['title'],
                'duration':i['duration'],
                'thumbnail':i['thumbnails'][0]['url'],
                'channel':i['channel']['name'],
                'link':i['link'],
                'views':i['viewCount']['short'],
                'published':i['publishedTime']
            }
        desc=''
        if i['descriptionSnippet']:
            for j in i['descriptionSnippet']:
                desc+=j['text']
        result_dict['description']=desc
        result_list.append(result_dict)
        context={'form':form,
        'results':result_list}
        return render(request,'dashboard/youtube.html',context)
    else:
        form =DashboardForm()
    context={'form':form}
    return render(request,'dashboard/youtube.html',context)


{% extends 'dashboard/base.html' %}
{% load static %}
{% block content %}
<section class='text-center container'>
    <h2>Search Videos in Youtube</h2>
    <p>search videos and select any video to open in youtube</p>
    <form action="" method="post">
      {% csrf_token %}
      {{form}}
        <input class="btn btn-danger" type="submit" value="Submit">
    </form><br>
    {% for result in results %}
    <a href="{{result.link}}" target="_blank">
        <div class="card">
            <div class="card-header">
                <div class="row">
                    <div class="col-md-5">
                        <img class="img-fluid" src="{{result.thumbnail}}" alt="">

                    </div>
                    <div class="col-md-7">
                        <h3 class="p-0 m-0">{{result.title}}</h3>
                        <b>
                            <u>
                                <h5 class="p-0 m-0">{{result.channel}}</h5>
                            </u>
                        </b>
                        <h6 class="p-0 m-1">{{result.description}}</h6>
                        <b>
                            <h6 class="ml-0 mt-3">{{result.duration}}</h6>
                            <h6 class="ml-0 mt-1">{{result.views}}</h6>
                            <h6 class="ml-0 mt-1">{{result.published}}</h6>
                        </b>
                    </div>
                </div>
            </div>
        </div>
    </a>
    {% endfor %}
    <br>
</section>

{% end block content %}

标签: djangolistwebpython-3.8

解决方案


推荐阅读