SQLAlchemy: Getter / Setter in der deklarativen Mixin-Klasse

8

Ich versuche, einfache Getter / Setter-Methoden für eine Mixinklasse zu definieren, die ich in meinem Datenbankschema verwenden möchte:

%Vor%

Wenn ich versuche, dieses Beispiel auszuführen, erhalte ich den folgenden Fehler:

  

sqlalchemy.exc.InvalidRequestError: Mapper-Eigenschaften (d. h. deferred, column_property (), relation () usw.) müssen bei deklarativen Mixinklassen als @ declared_attr callables deklariert werden. '

Mein Code ist fast eine 1: 1-Kopie aus dem SQLAlchemy Declarative Tutorial , mit dem einzigen Unterschied, dass die Eigenschaft / das Synonym in einer Mixin-Klasse deklariert ist. Das Anfügen oder Voranstellen des Dekorators "@declared_attr" an die vorhandenen Dekoratoren ändert nichts.

Wie behebe ich diese Situation?

    
jbaiter 28.04.2011, 16:32
quelle

1 Antwort

13

Vielleicht erstellen Sie attr() als eine @declared_attr -dekorierte Klassenmethode, die das Synonym zurückgibt?

%Vor%     
samplebias 28.04.2011, 17:00
quelle

Tags und Links