app/soc/views/models/base.py
changeset 1958 8e8f45dd46e3
parent 1879 60e48bc3aee3
child 1967 3fe7ad2d40c0
equal deleted inserted replaced
1957:972758a2682f 1958:8e8f45dd46e3
   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