<p>到目前为止,大部分事情你都做对了。导致问题的一个原因是模板没有迭代所有产品</p>
<p>在views.py中,Product.objects.all()返回一个查询集,您可以想象它是一个包含许多产品实例的列表</p>
<p>因此,当产品(即Product.objects.all())传递给模板时,您需要使用循环来迭代产品内的实例</p>
<p>我假设您的产品模型包含以下三个字段(您可以在稍后我提供的示例中用产品模型中的实际字段替换它们)</p>
<ul>
<li>名字</li>
<li>描述</li>
<li>数量</li>
</ul>
<p>现在,在Django模板中,您可以用以下代码替换{{products}}</p>
<pre><code><table>
<thead>
<tr>
<th scope="col" class="text-nowrap"><span>Product</span></th>
<th scope="col" class="text-nowrap"><span>Description</span></th>
<th scope="col" class="text-nowrap"><span>Qty</span></th>
</tr>
</thead>
<tbody>
{% for product in products %}
<tr>
<td><span>{{ product.name }}</span></td><! Replace the name with your actual field >
<td><span>{{ product.desciption }}</span></td><! Replace the desciption with your actual field >
<td><span>{{ product.qty }}</span></td><! Replace the qty with your actual field >
</tr>
{% endfor %}
</tbody>
</table>
</code></pre>
<p>在上面的例子中,最重要的部分是</p>
<pre><code>{% for product in products %}
<tr>
<td><span>{{ product.name }}</span></td>
<td><span>{{ product.desciption }}</span></td>
<td><span>{{ product.qty }}</span></td>
</tr>
{% endfor %}
</code></pre>
<p>它类似于下面的python代码</p>
<pre><code>for product in products:
print(product.name)
print(product.desciption)
print(product.qty)
</code></pre>
<p>因此,现在模板应该在表上显示产品</p>