Python 搜索结果不是';t仅在命令行中打印在网站中

Python 搜索结果不是';t仅在命令行中打印在网站中,python,html,django,Python,Html,Django,所以我在我的网站上添加了一个新页面来搜索“人物”项目。问题是,每当我搜索一个项目时,结果会显示在我的命令行中,但不会打印在网站上,唯一的是标签,但结果为空,如下所示: 性别: 年龄: 眼睛颜色: 电影: 因此,查询结果不会打印出来。为什么会这样 我的看法是: from django.shortcuts import render, HttpResponse from django.views.generic import ListView import requests def people

所以我在我的网站上添加了一个新页面来搜索“人物”项目。问题是,每当我搜索一个项目时,结果会显示在我的命令行中,但不会打印在网站上,唯一的是标签,但结果为空,如下所示: 性别: 年龄: 眼睛颜色: 电影: 因此,查询结果不会打印出来。为什么会这样

我的看法是:

from django.shortcuts import render, HttpResponse
from django.views.generic import ListView
import requests


def people(request):
    people = []
    
    if request.method == 'POST':
        
        people_url = 'https://ghibliapi.herokuapp.com/people/'
        
        search_params = {
            'people' : 'name',
            'people' : 'gender',
            'people' : 'age',
            'people' : 'eye_color',
            'q' : request.POST['search']
            
            }

        
        r = requests.get(people_url, params=search_params)
        results = r.json()
        
        if len(results):
            for result in results:
                people_data = {
                'Name' : result['name'],
                'Gender': result['gender'],
                'Age' : result['age'],
                'Eye_Color' : result['eye_color']
            }

            people.append(people_data)  
        
        else:
            message = print("No results found")

        print(people)
     

    context = {
    'people' : people
    }
        
    return render(request,'core/people.html', context)

这是html:

{% load static %}
<!DOCTYPE html>
<html>
<head>
    <title>Ghibli Studio | People</title>
    <link rel="stylesheet" href="{% static 'core/people.css' %}">
</head>
<body>
    <div class=" header">

    </div>
    <div class="wrap">
        <form action='/people' method="POST">
            {% csrf_token %}
            <div class="search">


                <input type="text" name="search" class="searchTerm" placeholder="Type character name, gender, age, or eye color">
                <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/4.7.0/css/font-awesome.min.css">
                <button type="submit" class="searchButton">

                    <i class="fa fa-search" style="font-size:24px"></i>
                </button>

            </div>


        </form>
    </div>

    {% if people %}
    {% for p in people %}
    <div>
        <ul class="result">
            <style>
                @import url('https://fonts.googleapis.com/css2?family=Dosis:wght@300&display=swap');
            </style>

            <h4>{{people.Name}}</h4>
            <h5 style="color:lightslategray;">
                Gender: {{people.Gender}} <br>
                Age: {{people.Age}}
                <br>Eye color: {{people.Eye_color}}
                <br>Film: {{people.Film}}
            </h5>


        </ul>
        {% endfor %}

        {% endif %}
    </div>


</body>
</html>
{%load static%}
吉卜力工作室|人
{%csrf_令牌%}
{%if people%}
{p在人员百分比中的百分比}
    @导入url('https://fonts.googleapis.com/css2?family=Dosis:wght@300&display=swap'); {{people.Name} 性别:{{people.Gender}}
    年龄:{{people.Age}
    眼睛颜色:{{人。眼睛颜色}
    电影:{{人。电影}
{%endfor%} {%endif%}
模板中个人的名字是
p
,而不是
,因此:

{% for p in people %}
<div>
    <ul class="result">
        <style>
            @import url('https://fonts.googleapis.com/css2?family=Dosis:wght@300&display=swap');
        </style>

        <h4>{{ p.Name }}</h4>
        <h5 style="color:lightslategray;">
            Gender: {{ p.Gender }}<br>
            Age: {{ p.Age }}
            <br>Eye color: {{ p.Eye_color }}
            <br>Film: {{ p.Film }}
        </h5>
    </ul>
</div>
{% endfor %}
{%p代表人物%}
    @导入url('https://fonts.googleapis.com/css2?family=Dosis:wght@300&display=swap'); {{p.Name}} 性别:{p.性别}}
    年龄:{p.年龄}
    眼睛颜色:{p.Eye\u color}
    电影:{p.电影}

{%endfor%}
除了“眼睛颜色”功能外,这也可以使用,您知道原因吗?@user12763792:那么该字段可能不是
eye\u color
,而是
eye\u color
EyeColor
或其他内容。请注意,PEP-8建议在字段中使用
snake_case
,而不是
PerlCase
(因此都是小写,用下划线分隔)。