0

django flatpages に取り組んでいるときに、このリソースを見つけました: Bending django flatpages to your will

便利だと思いましたが、ExtendedFlatPages がどのように順序付けられているかわかりません。言い換えれば、私は理解できません:

flatPages = ExtendedFlatPage.objects.filter(child_of__isnull=True).order_by('-show_after')

モデルは次のように定義されます。

from django.db import models
from django.contrib.flatpages.models import FlatPage
class ExtendedFlatPage(FlatPage):
    show_after = models.ForeignKey('ExtendedFlatPage', null=True, blank=True, default=None )
    child_of = models.ForeignKey('ExtendedFlatPage', null=True, blank=True, default=None )

ExtendedFlatPage を注文するために専用のフィールドを使用する必要はありませんが、この下のロジックを見つけることができないため、この方法はエレガントだと思います。

4

1 に答える 1

0

あなたが持っている順序は特に役に立ちません。show_after.id によって順序付けられることになりますが、これは単なる自動インクリメント int になります。

于 2012-04-09T16:26:57.317 に答える