外部キーで「order_by」を使用して、django-nonrel のデータベースからアイテムを返す方法はありますか?
詳細は次のとおりです。
#Models.py クラス Post(models.Model): article = models.TextField(help_text='ここに HTML を貼り付けるか入力してください') pub_date = モデル.DateField() .... クラス TagItems(models.Model): タイトル = models.CharField(max_length=200) .... クラス TagRel(models.Model): the_post = models.ForeignKey('投稿') the_tag = models.ForeignKey('タグ')
TagRel は、Post クラスと TagItems クラスの間の ManytoMany 関係を定義します。
各タグの記事一覧を取得したいです。
#欲望のアウトプット マイタグ -私の最初の投稿 -私の2番目の投稿 私の2番目のタグ - 私の他の投稿 - 別の投稿
以下を使用してデータをフィルタリングしているため、これまでのところすべて問題ありません。
def tagged_posts(): tag_items = TagItems.objects.all() 李=[] tag_items のアイテム: tag_rel_item = TagRel.objects.filter(the_tag__pk = item.pk) li.append(tag_rel_item) return {'list_of_objects': li}
db-indexer を使用して、db-indexes.py でクエリのフィルター部分を定義しています。これはすべて正常に機能しますが、投稿を公開日順に並べたいと思います。
Djangoのドキュメントでは、次を使用するように指示されています:
TagRel.objects.filter(the_tag__pk = item.pk).order_by('the_tag__pub_date')
しかし、order_by('the_tag__pub_date') の部分は、django-nonrel ではサポートされていないようです。
以下は、通常の Django でも機能します。
TagRel.objects.filter(the_tag__pk = item.pk).order_by('the_post')
これは、投稿がモデル内で日付順にソートされているため機能します。
しかし、これも django-nonrel では機能しないようです。
私の質問は、日付順 (最新>古い) に投稿を返すにはどうすればよいですか?
前もって感謝します