Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/django/23.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/arduino/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Django上下文/模板:呈现多个结果_Django_Django Views_Django Templates - Fatal编程技术网

Django上下文/模板:呈现多个结果

Django上下文/模板:呈现多个结果,django,django-views,django-templates,Django,Django Views,Django Templates,我有这个代码,我希望它能够返回多个产品。现在它只返回最后一个。 我认为这是因为变量被覆盖了,但我不知道其他方法来修复它 def result(request): rawquery = request.GET.get('q') #gets the product name to search from a form Product_set = Product.objects.filter(name__icontains=rawquery).distinct() for p

我有这个代码,我希望它能够返回多个产品。现在它只返回最后一个。 我认为这是因为变量被覆盖了,但我不知道其他方法来修复它

def result(request):

    rawquery = request.GET.get('q') #gets the product name to search from a form
    Product_set = Product.objects.filter(name__icontains=rawquery).distinct()
    for product in Product_set:
        name = product.name
        id = product.id
        store_name = product.store_name

        Price_set = Scan.objects.filter(product=id)
        for price in Price_set:
            current_price = price.price

        context = {
            'name': name,
            'store_name': store_name,
            'price': current_price,
            'query': rawquery
        }

        return render(request, 'result.html', context)
这是模板

%  {extends 'base.html' %}

  {%  block content %}

    <h1>Results for {{ query }} </h1> 

    <p> {% if name %} {{name}} {% else %} None {% endif %} | {% if store_name %} {{store_name}} {% endif %} | {% if price %} {{price}} {% endif %} </p>


  {% endblock content %}
%{extends'base.html%}
{%block content%}
{{query}的结果
{%if name%}{{name}}{%else%}无{%endif%}{%if商店{u name%}{{store_name}}{%endif%}{%if价格%}{{price}{%endif%}

{%endblock内容%}
您必须将产品附加到列表中:

def result(request):

    rawquery = request.GET.get('q') #gets the product name to search from a form
    Product_set = Product.objects.filter(name__icontains=rawquery).distinct()
    products = []
    for product in Product_set:
        price = Scan.objects.filter(product=product.id).first()

        products.append({
            'name': product.name,
            'store_name': product.store_name,
            'price': price.price
        })

    return render(request, 'result.html', {'query': rawquery, 'products': products})
现在,您可以在此处循环产品:

{% extends 'base.html' %}

{%  block content %}

<h1>Results for {{ query }} </h1> 
{% for product in products %}
<p> {{product.name}} | {{product.store_name}} | {{product.price}} </p>
{% endfor %}


{% endblock %}
{%extends'base.html%}
{%block content%}
{{query}的结果
{products%中产品的%s}
{{product.name}}{{product.store{u name}}{{product.price}}

{%endfor%} {%endblock%}
您必须将产品附加到列表中:

def result(request):

    rawquery = request.GET.get('q') #gets the product name to search from a form
    Product_set = Product.objects.filter(name__icontains=rawquery).distinct()
    products = []
    for product in Product_set:
        price = Scan.objects.filter(product=product.id).first()

        products.append({
            'name': product.name,
            'store_name': product.store_name,
            'price': price.price
        })

    return render(request, 'result.html', {'query': rawquery, 'products': products})
现在,您可以在此处循环产品:

{% extends 'base.html' %}

{%  block content %}

<h1>Results for {{ query }} </h1> 
{% for product in products %}
<p> {{product.name}} | {{product.store_name}} | {{product.price}} </p>
{% endfor %}


{% endblock %}
{%extends'base.html%}
{%block content%}
{{query}的结果
{products%中产品的%s}
{{product.name}}{{product.store{u name}}{{product.price}}

{%endfor%} {%endblock%}