擅长:python、mysql、java
<p>听起来您已经很熟悉了,可以使用<code>ListView</code>来执行此操作。您可以在没有模型的情况下使用<code>ListView</code>,如文档的各个部分所述(“不一定是查询集”):</p>
<p><a href="https://docs.djangoproject.com/en/1.8/ref/class-based-views/mixins-multiple-object/#django.views.generic.list.MultipleObjectMixin.get_queryset" rel="nofollow">https://docs.djangoproject.com/en/1.8/ref/class-based-views/mixins-multiple-object/#django.views.generic.list.MultipleObjectMixin.get_queryset</a></p>
<blockquote>
<p>Get the list of items for this view. This must be an iterable and may be a queryset (in which queryset-specific behavior will be enabled).</p>
</blockquote>
<p>因此,您应该能够执行以下操作:</p>
<pre><code>class MyListView(generic.ListView):
template_name = 'foobar.html'
def get_queryset(self):
return [1, 2, 3]
</code></pre>
<p>你的例子怎么了。。。事实上,您在内部for循环中引用<code>post</code>,而不是您定义为实际post的<code>i</code>。在</p>
<p>因为在模板上下文中将python <code>posts</code>变量重命名为<code>post</code>,然后以<code>i</code>的形式对其进行迭代。在</p>
<p>模板上下文中的<code>posts</code>只是一个列表,没有属性、键等,名为<code>post.title</code>。在</p>