如何 Return 来自 NodeJS Sequelize .save() 方法的最后插入 ID

How To Return Last Insert ID From NodeJS Sequelize .save() Method

鉴于此示例,

// insert the conversation into the lookup
const LOOKUP = new PrivateMessageLookup;

LOOKUP.communicator1 = communicator1;
LOOKUP.communicator2 = communicator2;

LOOKUP.save();

其中 PrivateMessageLookup 是模型

LOOKUP.save() 正确插入了记录,但是如何获取该记录的插入 ID?

我找不到答案。

当您使用 Model.create() 函数时,它将 return 一个具有 ID 集的模型实例。这是建立新对象的捷径,指定它是一条新记录,然后保存它。

// create a new instance from the model
const lookup = await Lookup.create({ communicator1, communicator2 });
// the ID will populate
console.log(lookup.id);

手写版本:

// build the record, specify it is new
const lookup = Lookup.build({ communicator1, communicator2 }, { isNewRecord: true });
// save
await lookup.save();
// the ID will populate
console.log(lookup.id);