2

オブジェクトをクライアントに返す前に、オブジェクトに追加のプロパティを追加したいと考えています。オブジェクトがシリアル化されると、その時点でオブジェクトから省略されます。一時的なプロパティを追加する方法はありますか?

4

4 に答える 4

4

type を に設定すると役立つと思いますDataTypes.VIRTUAL

例えば

var Line = sequelize.define("Line", {
    name: {
        type: DataTypes.STRING(50),
        allowNull: false
    },
    projects: {
        type: DataTypes.VIRTUAL
    }
});

Line.findAll().then(function (lines) {
    for (var i = 0; i < lines.length; i++)
        lines[i].projects = [];
    console.log(JSON.stringify(lines));
});

出力

[{"name":"test1","projects":[]},{"name":"test2","projects":[]}]

ドキュメント: http://docs.sequelizejs.com/en/latest/api/datatypes/

それが役に立てば幸い。

于 2015-12-16T05:34:41.010 に答える
0

はい、インスタンス メソッドを作成することでニーズを満たすことができます: http://www.sequelizejs.com/documentation#models-expansion

于 2013-04-16T02:16:28.493 に答える