Für ein Chrome app, weichen speichern Daten in IndexedDB, ich habe ein Objekt wie folgt:Indexing Array-Werte in einem Objekt in einem IndexedDB
var simplifiedOrderObject = {
"ordernumber": "123-12345-234",
"name": "Mr. Sample",
"address": "Foostreet 12, 12345 Bar York",
"orderitems": [
{
"item": "brush",
"price": "2.00"
},
{
"item": "phone",
"price": "30.90"
}
],
"parcels": [
{
"service": "DHL",
"track": "12345"
},
{
"service": "UPS",
"track": "3254231514"
}
]
}
Wenn i das Loch Objekt in einem Objektspeicher gespeichert wird, kann ich verwende ein Index für "Spur", der in jedem Auftragsobjekt mehrfach enthalten sein kann?
Oder ist es erforderlich oder möglicherweise besser/schneller jedes Objekt in mehrere objectStores wie Know von relationalen DBs aufzuspalten:
- bestellen
- OrderItem
- Paket
Die Lösung sollte arbeiten auch schnell mit 100.000 oder mehr gespeicherten Objekten.
Sie haben Recht - die aktuelle indizierte DB-API macht das nicht einfach. Ich habe einen Tracking-Fehler für dieses Problem hier: https://github.com/w3c/IndexedDB/issues/35 –
Ich würde sagen, das ist kein Bug, weil es so funktioniert, wie es in der [Spezifikation] (https: //w3c.github.io/IndexedDB/# Schlüsselpfadkonstrukt). Aber es ist wirklich ein fehlendes Feature ... :( – Lutz
Ja, "Problem" nicht "Bug". BTW, ich bin der Editor der Spezifikation. :) –