2012-03-20 11 views
2

私はこの問題が発生しています。あなたがブログアプリケーションを持っていて、作成したすべての投稿を表示したいとします。しかし、最初に表示する必要があり、別のhtml "ブロック"に存在しなければならない "スティッキー"または "フィーチャー"にすることができる投稿があります。多分それは最良の例ではないが、結局私が必要とするものである。Django:異なる情報を表示するループ内のタグ

ので、モデルは単純です:私はちょうどすべての記事を照会し、テンプレートでそれを表示していますビューで

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!

答えて

5

Regroupfeaturedフィールド。

+0

これです!本当に簡単!私がそれを逃した方法を知らない。 Ignacioありがとうございました。 – santiagobasulto

+0

@ santiagobasultoなぜ答えを受け入れないのですか? – neoascetic

+1

私は3分以上待つ必要があり、夕食を食べに行きました。いいえ、私はしなかった。今すぐ – santiagobasulto

関連する問題