Sequelize enthält das berechnete Feld, das in der Datenbank berechnet wird?

8

Mit Sequelize in Node.js ist es möglich, ein Feld zu definieren, das in der Datenbank berechnet wird, wenn Daten abgerufen werden?

Ich verstehe, dass ich einen benutzerdefinierten Getter zum DAO hinzufügen kann, um Dinge zu berechnen Knoten , aber das kann nur mit bereits geladenen Daten funktionieren.

Mein Ziel ist es, eine Berechnung zu definieren, die in der Datenbank ausgeführt wird und daher eine Unterabfrage zur Berechnung anderer Daten verwenden kann.

Zum Beispiel würde ich das am liebsten tun:

%Vor%

Irgendeine Möglichkeit, dies zu tun?

Momentan benutze ich Sequelize.query , um benutzerdefinierte Abfragen auszuführen, aber dann verliere ich die gesamte Funktionalität von Sequelize und finde heraus, was Sequelize bereits getan hat. Eine andere Option, die ich habe, ist, zwei Abfragen auszuführen - eine vollständig durch Sequelize für grundlegende Daten und eine zweite, um nur berechnete Daten zu erhalten, und dann die berechneten Daten zu den Objekten in JavaScript zu kopieren.

    
Samuel Neff 06.10.2014, 02:07
quelle

2 Antworten

0

Am Ende habe ich eine Ansicht innerhalb der Datenbank erstellt und dann eine Sequelize-Definition für die Ansicht, genau wie es eine Tabelle war, und das berechnete Feld eingeschlossen, da es Teil der Ansicht ist.

Das hat gut funktioniert, war aber nicht ideal.

    
Samuel Neff 20.10.2015 20:13
quelle
0

Sie können vielleicht GetterMethods des Sequelize-Modells define:

verwenden %Vor%     
John Xiao 22.10.2015 10:46
quelle

Tags und Links