Comments (4)
Do you think that test is sufficient for now?
from dstore.
Thanks for that. What you have suggested would be sufficient for cases where the keys are always integers. But what about when the composite key columns are strings that may contain commas?
Perhaps the store's idProperty
should optionally take a list, e.g., ['person_id', 'group_id']
, and then .get()
and .remove()
could work like this: Store.remove({person_id: 5, group_id: 3})
. Store.getIdentity(model)
could return an object, {person_id: 5, group_id: 3}
.
I'm not sure how composite keys best fit into a REST-style paradigm. Probably a DELETE would have to be sent to the resource's collection with a filter on the composite key columns.
from dstore.
Ultimately, any combination values can be unambiguously represented with a single string whether it be achieved through simple delimiter escaping, or more complex serialization. And, all the built-in stores, at least, actually require a string/scalar value, as Memory must use the id for the property names in the index, and the Rest store needs the id to construct URLs. You could create a custom store that supported composite keys with any serialization, but that I think that goes well beyond the purpose of the built-in stores.
from dstore.
Thank you for the explanation. That makes perfect sense.
from dstore.
Related Issues (20)
- dstore/Memory#setData does not update grid. HOT 3
- question documentation - combination of stores memory/rest HOT 6
- Request _renderFilterParams fails when filter target contains parens
- cannot dojbuild that by bower_component HOT 2
- Trackable event incorrect when beforeId matched item being updated
- typedef not included in npm package or DefinitelyTyped registry
- filter issue with certain keys HOT 1
- Caching-store exception propagation
- allow filter-functions for legacy-stores
- dgrid/Rest does not parse arrays of JSON in get(1) HOT 1
- Cache mixin doesn't work with Rest without an object ID when adding when using the default Memory store for the cache
- IndexedDB fails to create index if you use a not default 'idProperty' HOT 1
- How to use filter for excluding a list of values? HOT 1
- bower.json should restrict to dojo 1.x HOT 4
- track() reports on data changed outside the collection HOT 2
- Commit 2288729 breaks existing code HOT 5
- Customizable error logging
- Dependency on @types/dojo
- Strict mode exception in Cache#_fetch() HOT 5
- RequestMemory does not honor HTTP headers
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from dstore.