git://git.onelab.eu
/
unfold.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
|
inline
| side by side (parent:
2163bb9
)
Retrieve metadata once per session
author
Mohamed Larabi
<mohamed.larabi@inria.fr>
Wed, 13 Mar 2013 10:12:11 +0000
(11:12 +0100)
committer
Mohamed Larabi
<mohamed.larabi@inria.fr>
Wed, 13 Mar 2013 10:12:11 +0000
(11:12 +0100)
engine/page.py
patch
|
blob
|
history
diff --git
a/engine/page.py
b/engine/page.py
index
7ec2727
..
850aa7c
100644
(file)
--- a/
engine/page.py
+++ b/
engine/page.py
@@
-58,27
+58,32
@@
class Page:
def load_metadata(self, request):
def load_metadata(self, request):
- manifold_api_session_auth = request.session['manifold']['auth']
- manifold_api = ManifoldAPI(auth=manifold_api_session_auth)
+ if 'metadata' not in request.session.keys():
+ manifold_api_session_auth = request.session['manifold']['auth']
+ manifold_api = ManifoldAPI(auth=manifold_api_session_auth)
- fields = ['table', 'column.column',
+
fields = ['table', 'column.column',
'column.description','column.header', 'column.title',
'column.unit', 'column.info_type',
'column.resource_type', 'column.value_type',
'column.allowed_values', 'column.platforms.platform',
'column.platforms.platform_url']
'column.description','column.header', 'column.title',
'column.unit', 'column.info_type',
'column.resource_type', 'column.value_type',
'column.allowed_values', 'column.platforms.platform',
'column.platforms.platform_url']
- results = manifold_api.Get('metadata:table', [], [], fields)
+
results = manifold_api.Get('metadata:table', [], [], fields)
- for res in results:
- method = res['table']
- self._metadata[method] = res
+ for res in results:
+ method = res['table']
+ self._metadata[method] = res
+
+ request.session['metadata'] = self._metadata
+ self._metadata_javascript = "all_headers=" + json.dumps(self._metadata) + ";"
+ self.add_js_chunks(self._metadata_javascript)
+ else:
+ self._metadata = request.session['metadata']
- request.session['metadata'] = self._metadata
self._metadata_javascript = "all_headers=" + json.dumps(self._metadata) + ";"
self.add_js_chunks(self._metadata_javascript)
self._metadata_javascript = "all_headers=" + json.dumps(self._metadata) + ";"
self.add_js_chunks(self._metadata_javascript)
-
def metadata_get_fields(self, method):
return self._metadata[method]['column'].sort()
def metadata_get_fields(self, method):
return self._metadata[method]['column'].sort()