651 content = helper.lists.getListContent(request, params, filter=filter) |
651 content = helper.lists.getListContent(request, params, filter=filter) |
652 contents = [content] |
652 contents = [content] |
653 |
653 |
654 return self._list(request, params, contents, page_name) |
654 return self._list(request, params, contents, page_name) |
655 |
655 |
656 def _getPickData(self, model, filter, logic): |
656 def _getData(self, model, filter, order, logic): |
657 """Retrieves the pick data for this query. |
657 """Retrieves the pick data for this query. |
658 |
658 |
659 Args: |
659 Args: |
660 model: the model that is being queried |
660 model: the model that is being queried |
661 filter: the filters that apply |
661 filter: the filters that apply |
662 logic: the logic that will be used for the query |
662 logic: the logic that will be used for the query |
663 """ |
663 """ |
664 |
664 |
665 entities = logic.getForFields(filter=filter, limit=1000) |
665 entities = logic.getForFields(filter=filter, order=order, limit=1000) |
666 return entities |
666 return entities |
667 |
667 |
668 @decorators.merge_params |
668 @decorators.merge_params |
669 @decorators.check_access |
669 @decorators.check_access |
670 def pick(self, request, acces_type, page_name=None, params=None): |
670 def pick(self, request, acces_type, page_name=None, params=None): |
691 for key in request.GET.keys(): |
691 for key in request.GET.keys(): |
692 # need to use getlist as we want to support multiple values |
692 # need to use getlist as we want to support multiple values |
693 filter[key] = request.GET.getlist(key) |
693 filter[key] = request.GET.getlist(key) |
694 |
694 |
695 if params['cache_pick']: |
695 if params['cache_pick']: |
696 fun = soc.cache.logic.cache(self._getPickData) |
696 fun = soc.cache.logic.cache(self._getData) |
697 else: |
697 else: |
698 fun = self._getPickData |
698 fun = self._getData |
699 |
699 |
700 entities = fun(logic._model, filter, logic) |
700 order = [] |
|
701 entities = fun(logic.getModel(), filter, order, logic) |
701 |
702 |
702 data = [i.toDict() for i in entities] |
703 data = [i.toDict() for i in entities] |
703 |
704 |
704 return self.json(request, data) |
705 return self.json(request, data) |
705 |
706 |