diff options
author | Alvin Li <liweitianux@gmail.com> | 2013-08-18 00:52:06 +0800 |
---|---|---|
committer | Alvin Li <liweitianux@gmail.com> | 2013-08-18 00:52:06 +0800 |
commit | 9d07e8a26657542c98535abb7812d83a98839918 (patch) | |
tree | 6d5b039e7c01082a280fcefb7cc4fe3ca806e521 /97suifangqa/apps/utils | |
parent | 0cdba05f09201b6db129ebaa787e960be9ecb851 (diff) | |
download | 97dev-9d07e8a26657542c98535abb7812d83a98839918.tar.bz2 |
* improved 'indicator.views.follow_indicator()',
renamed to 'indicator_fanduf()' due to name conflict
* finished 'search' function for page indicator NewDeleteIndex.html
* added 'apps/utils/search_tools.py': some tools to process search results
* renamed 'sciblog/templatetags/tools.py' to 'get_range.py'
* added 'format_data()' to indicator.tools': to format data of
record/confine, make it properly display in html page;
* 'indicator/javascripts/new_delete_index.js':
added global 'var added_indexes_id' to track the already added indexes
* added 'indicator/templatetags/divisible_by.py' filter to check
if a number can be extactly divide by another number;
* fixed the 'index_card_fir/index_card_sec' problem of
'act_card_container' of page 'SheetDefault.html'
* indicator/static/css/new_delete_index.css:
added 'index_search_error' and 'index_error'
* fixed 'unit.dump' problems in 'indicator.models'
* 'indicator.tools':
o added 'RI_TYPES', 'RI_WEIGHTS'
o added 'type' in the return value of 'calc_indicator_weight()'
and 'recommend_indicator()'
* added field 'followedHistories' in 'indicator.models.UserIndicator'
* moved 'follow_indicator()' and 'unfollow_indicator()' from
'indicator.views' to 'indicator.tools'
TODO:
* highcharts: draw chart for indicator records;
* add/edit data, and submit (page format design)
* followed indicator submit buttion
Diffstat (limited to '97suifangqa/apps/utils')
-rw-r--r-- | 97suifangqa/apps/utils/search_tools.py | 28 |
1 files changed, 28 insertions, 0 deletions
diff --git a/97suifangqa/apps/utils/search_tools.py b/97suifangqa/apps/utils/search_tools.py new file mode 100644 index 0000000..ff304f7 --- /dev/null +++ b/97suifangqa/apps/utils/search_tools.py @@ -0,0 +1,28 @@ +# -*- coding: utf-8 -*- + +""" +tools for haystack search +""" + +from haystack.query import SearchQuerySet + +import itertools + + +def objects_of_sqs(sqs): + """ + return the corresponding model set of the SearchQuerySet + """ + if isinstance(sqs, SearchQuerySet): + return itertools.imap(lambda x: x.object, sqs) + else: + return sqs + +def limit(seq, count=None): + """ + return the first 'count' items in 'seq' + if 'count=None', then all items returned + """ + return itertools.islice(seq, count) + + |