2
我有这个问题:假设你有一个博客应用程序,并且你想显示所有创建的帖子。但是,您的帖子可以是“粘性”或“精选”,必须先显示,并且必须位于不同的html“块”中。也许这不是最好的例子,但毕竟是我需要的。Django:For循环标签显示不同的信息
因此,该模式很简单:
class Post(models.Model):
title = models.CharField()
content = models.TextField()
featured = models.BooleanField(default=False)
created = models.DateTimeField(auto_now=False, auto_now_add=True)
class Meta:
ordering = ['-featured','-created']
在视图我只是查询所有的职位,并在模板中显示它:
def my_view(request):
return render_to_response('template.html',{'posts':Post.objects.all()})
现在的问题是在我模板,我想有作为的结果,这是什么:
<html>
<div class='featured-posts'>
<ul>
<li> A Featured post</li>
</ul>
</div>
<div class='not-featured-posts'>
<ul>
<li> A NON Featured post</li>
</ul>
</div>
</html>
我能做些什么?我在想,也许我可以抓住这些分开的,这样说:
return render_to_response('template.html',{
'featured':Post.objects.filter(featured=True),
'non_featured':Post.objects.filter(featured=False)
})
但我真的不喜欢这种做法,是否有任何“基于模板的”解决方案?
Thx!
这就是它!真的很简单!不知道我是如何错过它的。谢谢Ignacio。 – santiagobasulto 2012-03-20 01:13:56
@santiagobasulto那么为什么你不接受答案? – neoascetic 2012-03-20 02:02:50
Becouse我需要再等3分钟,然后去吃晚饭。不,我做了。现在我* – santiagobasulto 2012-03-20 02:58:39