From ad95e4f03ea5c5f7ee4a7eca1b001a45666f637c Mon Sep 17 00:00:00 2001 From: Zachary Sloan Date: Tue, 7 May 2013 23:26:55 +0000 Subject: Made some progress adding species/group tabs to the quick search result page to make the results easier to navigate --- wqflask/wqflask/search_results.py | 21 +- wqflask/wqflask/templates/quick_search.html | 323 +++++++++++++++++++--------- 2 files changed, 235 insertions(+), 109 deletions(-) diff --git a/wqflask/wqflask/search_results.py b/wqflask/wqflask/search_results.py index 89f146b3..5f3c036f 100644 --- a/wqflask/wqflask/search_results.py +++ b/wqflask/wqflask/search_results.py @@ -74,6 +74,7 @@ class SearchResultPage(object): self.search_terms = kw['q'] print("self.search_terms is: ", self.search_terms) self.quick_search() + self.get_group_species_tree() else: self.results = [] #self.quick_search = False @@ -134,16 +135,32 @@ class SearchResultPage(object): type_dict = {'PublishXRef': 'phenotype', 'ProbeSetXRef': 'mrna_assay', 'GenoXRef': 'genotype'} - + + self.species_groups = {} for dbresult in dbresults: this_result = {} this_result['table_name'] = dbresult.table_name this_result['key'] = dbresult.the_key this_result['result_fields'] = json.loads(dbresult.result_fields) - + this_species = this_result['result_fields']['species'] + this_group = this_result['result_fields']['group_name'] + if type_dict[dbresult.table_name] not in self.species_groups: + self.species_groups[type_dict[dbresult.table_name]] = {} + if this_species not in self.species_groups[type_dict[dbresult.table_name]]: + self.species_groups[type_dict[dbresult.table_name]][this_species] = collections.defaultdict(list) + if this_group not in self.species_groups[type_dict[dbresult.table_name]][this_species]: + self.species_groups[type_dict[dbresult.table_name]][this_species].append(this_group) self.results[type_dict[dbresult.table_name]].append(this_result) #print("results: ", pf(self.results['phenotype'])) + + #def get_group_species_tree(self): + # self.species_groups = collections.default_dict(list) + # for key in self.results: + # for item in self.results[key]: + # self.species_groups[item['result_fields']['species']].append( + # item['result_fields']['group_name']) + #def quick_search(self): # self.search_terms = parser.parse(self.search_terms) diff --git a/wqflask/wqflask/templates/quick_search.html b/wqflask/wqflask/templates/quick_search.html index 769c40e6..9d5b0c74 100644 --- a/wqflask/wqflask/templates/quick_search.html +++ b/wqflask/wqflask/templates/quick_search.html @@ -21,9 +21,7 @@
Id | +Species | +Group | +Description | +LRS | +Year | +Authors | +
---|---|---|---|---|---|---|
{{ result.result_fields['phenotype_id'] }} | +{{ result.result_fields['species'] }} | +{{ result.result_fields['group_name'] }} | +{{ result.result_fields['description'] }} | +{{ result.result_fields['lrs'] }} | ++ + {{ result.result_fields['year'] }} + + | +{{ result.result_fields['authors'] }} | +
Record ID | +Species | +Group | +Data Set | +Symbol | +Description | +Location | +Mean Expr | +Max LRS | +
---|---|---|---|---|---|---|---|---|
+ + | +{{ result.result_fields['species'] }} | +{{ result.result_fields['group_name'] }} | +{{ result.result_fields['dataset_name'] }} | +{{ result.result_fields['symbol'] }} | +{{ result.result_fields['description'] }} | +{{ result.result_fields['chr'] }} : {{ result['mb'] }} | +{{ result.result_fields['mean'] }} | +{{ result.result_fields['lrs'] }} | +
Marker | +Species | +Group | +Data Set | +Location | +
---|---|---|---|---|
+ + {{ result.result_fields['marker_name'] }} + + | +{{ result.result_fields['species'] }} | +{{ result.result_fields['group_name'] }} | +{{ result.result_fields['dataset_name'] }} | +{{ result.result_fields['chr'] }} : {{ result.result_fields['mb'] }} | +
{{key}} | - {% endfor %} - #}Id | Species | Group | @@ -59,26 +203,24 @@|||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|
{{ result['phenotype_id'] }} | -{{ result['species'] }} | -{{ result['group_name'] }} | -{{ result['description'] }} | -{{ result['lrs'] }} | +{{ result.result_fields['phenotype_id'] }} | +{{ result.result_fields['species'] }} | +{{ result.result_fields['group_name'] }} | +{{ result.result_fields['description'] }} | +{{ result.result_fields['lrs'] }} | - - {{ result['year'] }} + + {{ result.result_fields['year'] }} | -{{ result['authors'] }} | - {% endfor %} +{{ result.result_fields['authors'] }} |
Marker | @@ -127,91 +267,60 @@||||||||
---|---|---|---|---|---|---|---|---|
- - {{ result['marker_name'] }} + + {{ result.result_fields['marker_name'] }} | -{{ result['species'] }} | -{{ result['group_name'] }} | -{{ result['dataset_name'] }} | -{{ result['chr'] }} : {{ result['mb'] }} | - {% endfor %} +{{ result.result_fields['species'] }} | +{{ result.result_fields['group_name'] }} | +{{ result.result_fields['dataset_name'] }} | +{{ result.result_fields['chr'] }} : {{ result.result_fields['mb'] }} |