2010-05-04 1 views
14

kann ich tun:SQLAlchemy-Beziehungsfilter?

table.relationship.filter(column = value) 

eine Teilmenge von Zeilen für Beziehungen zu bekommen? und das gleiche für order_by?

Antwort

10

Entsprechend der relationship() documentation können Sie order_by Schlüsselwortargument mit relationship s verwenden, um die Reihenfolge festzulegen, die zurückgegeben wird. Auf derselben Seite wird erwähnt, dass Sie auch das Schlüsselwort argument primaryjoin verwenden können, um zusätzliche Join-Parameter zu definieren. Ich denke, das kann für den gewünschten Filter verwendet werden.

+0

unterbrochener Link. Benutzer dies stattdessen http://docs.sqlalchemy.org/en/rel_0_9/orm/relationships.html – Sheena

37

relationship() mit lazy='dynamic' Option gibt Ihnen eine Abfrage (AppenderQuery Objekt, das Sie Elemente hinzufügen können/entfernen), so können Sie .filter()/.filter_by() und .order_by() es.

+3

Details: http://docs.sqlalchemy.org/en/rel_0_7/orm/loading.html – Rescommunes

+3

Aktuelle Version: http: //docs.sqlalchemy.org/en/rel_0_9/orm/loading.html – famousgarkin

+7

Link erneut verschoben: http://docs.sqlalchemy.org/en/latest/orm/loading_relationships.html –