Я действительно могу использовать некоторую помощь по моему коду. Я использую индексированной в моем веб-приложение, и я создал два в ObjectStore: - companyToCall - companyCalledНе удается удалить объект в IndexedDB с помощью ключа auto_increment
Оба содержат объекты Компании (пользовательский класс в JS я сделал). Здесь идет схема:
databaseOpeningRequest.onupgradeneeded = function(event)
{
db = event.target.result;
db.createObjectStore('companyToCall', { autoIncrement: true }).createIndex("id", "id", { unique: true});
db.createObjectStore('companyCalled', { autoIncrement: true }).createIndex("id", "id", { unique: true});
}
Я решил не использовать Company.id в качестве ключа в БД, потому что я хотел, чтобы запомнить порядок включения в базу данных, например, вставить впоследствии компании с идентификатором 25 20 и 30 в дБ, я хочу, чтобы их ключи были такими: компания 25 -> 1/компания 20 -> 2/компания 30 -> 3
Все эти компании впервые вставляются в хранилище CompanyToCall и когда я Я работаю с одним, я хочу поместить его в хранилище CompanyCalled и удалить его из хранилища CompanyToCall.
К сожалению, удаление в хранилище CompanyToCall не будет работать, и я не могу понять, почему. Вот исключение:
var removeCompanyFromToCallStorage = function(company)
{
if (activateLocalStorage)
{
var requete = db.transaction(['companyToCall'], 'readwrite').objectStore('companyToCall').delete(company.getId());
requete.onsuccess = function(e)
{
console.log('worked');
};
}
};
я получил «работал» на моей консоли, но когда я проверяю дб я все еще могу видеть эту компанию в неправильном хранении (после обновления и т.д. и т.п.)
Кто-нибудь есть идеи?