Viele-zu-viele selbstreferenzielle Beziehung in sqlalchemy

9

Ich versuche, in sqlalchemy eine selbstreferenzielle Viele-zu-Viele-Beziehung zu erstellen (das heißt, dass Zeile viele Elternlinien und viele Unterlinien haben kann):

%Vor%

Aber ich bekomme den folgenden Fehler: sqlalchemy.exc.ArgumentError: Die Join-Bedingung zwischen Eltern / untergeordnete Tabellen für die Beziehung Line.next_lines. Geben Sie einen Ausdruck "primaryjoin" an n. Wenn 'sekundär' vorhanden ist, wird 'sekundäres Verbinden' ebenfalls benötigt.

Weißt du, wie ich das beheben könnte?

    
mike 14.11.2010, 11:23
quelle

1 Antwort

5

Sie sollten nur brauchen:

  

prev_lines = Beziehung (Vereinigung,   backref="next_lines",   primaryjoin = id == Assoziation.prev_id)

Da dies die Rückwärtsreferenz "next_lines" angibt, ist keine "next_lines" -Beziehung erforderlich.

Sie können dies auch mithilfe des Parameters remote_side für eine Beziehung tun: Ссылка

    
Nathan Villaescusa 17.11.2010 15:06
quelle