X-Git-Url: http://git.onelab.eu/?a=blobdiff_plain;f=plugins%2Fquerytable%2Fstatic%2Fjs%2Fquerytable.js;h=9d7bced0716ff2d6f51ceedb3a0ff05c5e1c9fab;hb=265fd105b18cfa17791352c04a8da976b2c4826f;hp=4cafe83e808e8065510e2c264dce46c401b5b130;hpb=ea77a50a5453a19d3dc1c71285efb63e42af556b;p=myslice.git diff --git a/plugins/querytable/static/js/querytable.js b/plugins/querytable/static/js/querytable.js index 4cafe83e..9d7bced0 100644 --- a/plugins/querytable/static/js/querytable.js +++ b/plugins/querytable/static/js/querytable.js @@ -41,8 +41,18 @@ var query = manifold.query_store.find_analyzed_query(this.options.query_uuid); this.method = query.object; - var keys = manifold.metadata.get_key(this.method); - this.key = (keys && keys.length == 1) ? keys[0] : null; + // xxx beware that this.key needs to contain a key that all records will have + // in general query_all will return well populated records, but query + // returns records with only the fields displayed on startup. + this.key = (this.options.id_key); + if (! this.key) { + // if not specified by caller, decide from metadata + var keys = manifold.metadata.get_key(this.method); + this.key = (keys && keys.length == 1) ? keys[0] : null; + } + if (! this.key) messages.warning("querytable.init could not kind valid key"); + + messages.debug("querytable: key="+this.key); /* Setup query and record handlers */ this.listen_query(options.query_uuid);