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.
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.
Tags und Links node.js sequelize.js