예제 #1
0
파일: views.py 프로젝트: namongk/ecogwiki
    def get(self, path, head=False):
        cache.create_prc()
        expression = WikiPage.path_to_title(path)
        parsed_expression = search.parse_expression(expression)
        scoretable = WikiPage.search(expression)

        positives = dict([(k, v) for k, v in scoretable.items() if v >= 0.0])
        positives = OrderedDict(
            sorted(positives.iteritems(),
                   key=operator.itemgetter(1),
                   reverse=True)[:20])
        negatives = dict([(k, abs(v)) for k, v in scoretable.items()
                          if v < 0.0])
        negatives = OrderedDict(
            sorted(negatives.iteritems(),
                   key=operator.itemgetter(1),
                   reverse=True)[:20])

        self.response.headers['Content-Type'] = 'text/html; charset=utf-8'
        html = template(
            self.request, 'search.html', {
                'expression': expression,
                'parsed_expression': parsed_expression,
                'positives': positives,
                'negatives': negatives
            })
        set_response_body(self.response, html, head)
예제 #2
0
 def load(self):
     expression = WikiPage.path_to_title(self.path)
     scoretable = WikiPage.search(expression)
     parsed_expression = search.parse_expression(expression)
     positives = dict([(k, v) for k, v in scoretable.items() if v >= 0.0])
     positives = OrderedDict(sorted(positives.iteritems(), key=operator.itemgetter(1), reverse=True)[:20])
     negatives = dict([(k, abs(v)) for k, v in scoretable.items() if v < 0.0])
     negatives = OrderedDict(sorted(negatives.iteritems(), key=operator.itemgetter(1), reverse=True)[:20])
     return {
         "expression": expression,
         "parsed_expression": parsed_expression,
         "positives": positives,
         "negatives": negatives,
     }
예제 #3
0
파일: views.py 프로젝트: ledzpl/ecogwiki
    def get_search_result(self, path, head):
        expression = WikiPage.path_to_title(path)
        parsed_expression = search.parse_expression(expression)
        scoretable = WikiPage.search(expression)

        positives = dict([(k, v) for k, v in scoretable.items() if v >= 0.0])
        positives = OrderedDict(sorted(positives.iteritems(),
                                       key=operator.itemgetter(1),
                                       reverse=True)[:20])
        negatives = dict([(k, abs(v)) for k, v in scoretable.items() if v < 0.0])
        negatives = OrderedDict(sorted(negatives.iteritems(),
                                       key=operator.itemgetter(1),
                                       reverse=True)[:20])

        self.response.headers['Content-Type'] = 'text/html; charset=utf-8'
        html = self._template('search.html', {'expression': expression,
                                              'parsed_expression': parsed_expression,
                                              'positives': positives,
                                              'negatives': negatives})
        self._set_response_body(html, head)
예제 #4
0
 def load(self):
     expression = WikiPage.path_to_title(self.path)
     scoretable = WikiPage.search(expression)
     parsed_expression = search.parse_expression(expression)
     positives = dict([(k, v) for k, v in scoretable.items() if v >= 0.0])
     positives = OrderedDict(
         sorted(positives.iteritems(),
                key=operator.itemgetter(1),
                reverse=True)[:20])
     negatives = dict([(k, abs(v)) for k, v in scoretable.items()
                       if v < 0.0])
     negatives = OrderedDict(
         sorted(negatives.iteritems(),
                key=operator.itemgetter(1),
                reverse=True)[:20])
     return {
         'expression': expression,
         'parsed_expression': parsed_expression,
         'positives': positives,
         'negatives': negatives,
     }
예제 #5
0
 def load(self):
     expression = WikiPage.path_to_title(self.path)
     scoretable = WikiPage.search(expression)
     parsed_expression = search.parse_expression(expression)
     positives = dict([(k, v) for k, v in scoretable.items() if v >= 0.0])
     positives = OrderedDict(sorted(positives.iteritems(),
                                    key=operator.itemgetter(1),
                                    reverse=True)[:20])
     negatives = dict([(k, abs(v)) for k, v in scoretable.items() if v < 0.0])
     negatives = OrderedDict(sorted(negatives.iteritems(),
                                    key=operator.itemgetter(1),
                                    reverse=True)[:20])
     context =  {
         'expression': expression,
         'parsed_expression': parsed_expression,
         'positives': positives,
         'negatives': negatives,
     }
     if positives:
         context['positive_items'] = positives.items()
     if negatives:
         context['negative_items'] = negatives.items()
     return context