Я использую Dexie для работы с IndexedDB. Я использую:
db.version(1).stores({
activities: '++LocalActivityId'
});
чтобы PK LocalActivityId автоматически увеличивался/назначался.
Когда я использую put:
db.activities.put(activity).then(function(newId){
// don't even need to use "newId", the value is already assigned to my object
console.log("This will have the new LocalActivityId " + activity.LocalActivityId );
});
он присваивает LocalActivityId моему объекту с новым значением из базы данных, но когда я пытаюсь выполнить bulkPut, он этого не делает:
db.activities.bulkPut(activities).then(function (lastKey) {
console.log("There is nothing here: " + activities[0].LocalActivityId);
});
bulkPut также возвращает только последний новый идентификатор, поэтому у меня нет простого способа получить идентификаторы всех только что вставленных объектов.
Это ожидаемое поведение?
Если это ожидается, что делают люди, пытающиеся выполнить массовую вставку объектов и им нужно знать новые идентификаторы, присвоенные этим объектам?