3

状況は次のとおりです。私は親モデルに と言いBlogPostます。それは多くCommentのsを持っています。私が欲しいのは、BlogPostの作成日順に並べられた のリストですComment。つまり、最新のコメントを含むブログ投稿がリストの一番上にあるはずです。これはSQLAlchemyで可能ですか?

4

2 に答える 2

4

http://www.sqlalchemy.org/docs/05/mappers.html#controlling-ordering

バージョン0.5以降、明示的に構成されていない限り、ORMはクエリの順序を生成しません。

リストベースのコレクションに適用されるコレクションの「デフォルト」の順序は、relation()のorder_byキーワード引数を使用して構成できます。

于 2009-01-29T16:35:02.837 に答える
1

ORM を使用しているときに、親と同じ質問がありました。GHZ のリンクには、それがどのように可能であるかについての回答が含まれていました。sqlalchemy では、BlogPost.comments が Comments テーブルへのマップされたリレーションであると仮定すると、次のことはできません。

session.query(BlogPost).order_by(BlogPost.comments.creationDate.desc())

、しかし、あなたはすることができます:

session.query(BlogPost).join(Comments).order_by(Comments.creationDate.desc())

于 2009-08-04T14:53:02.777 に答える