|Version 9 (modified by 10 years ago) ( diff ),|
Sahana Eden uses a WebServices architecture
API documentation is available in Epydoc format:
ER diagrams can be built using MySQL Workbench
This is a fairly common pattern for storing flexible data models.
If you need massive scale then using a dedicated NoSQL database for this does have it's advantages, however it is rarely useful for normal Eden tables due to performance limitations & the inability to use database constraints here (like Foreign Keys). Another disadvantage is that it is unable to be queried easily.
For these reasons there is currently no support for this model in CRUD, although it would be easy to add if-required.
If there is a strong need for this pattern for the non-foreign keys, then it is best to encode all the key/value pairs into a single text field, e.g. in JSON (like deleted_fk). Then need to add widget to handle the user presentation, validation & encoding/decoding. A Metavalidator could be used for server-side validation, if required.