def _apply_sorting(self, options=None):
     """
     Dojo aware filtering
     """
     fields = []
     for key in list(options.keys()):
         if RE_SORT.match(key):
             fields = RE_SORT.search(key).group(1)
             fields = [f.strip() for f in fields.split(',')]
             break
     return fields
Beispiel #2
0
 def _apply_sorting(self, options=None):
     """
     Dojo aware filtering
     """
     fields = []
     for key in options.keys():
         if RE_SORT.match(key):
             fields = RE_SORT.search(key).group(1)
             fields = [f.strip() for f in fields.split(',')]
             break
     return fields
Beispiel #3
0
 def apply_sorting(self, obj_list, options=None):
     """
     Dojo aware filtering
     """
     fields = []
     for key in options.keys():
         if RE_SORT.match(key):
             fields = RE_SORT.search(key).group(1)
             fields = [f.strip() for f in fields.split(',')]
             break
     if fields:
         obj_list = obj_list.order_by(",".join(fields))
     return obj_list
Beispiel #4
0
 def apply_sorting(self, obj_list, options=None):
     """
     Dojo aware filtering
     """
     fields = []
     for key in options.keys():
         if RE_SORT.match(key):
             fields = RE_SORT.search(key).group(1)
             fields = [f.strip() for f in fields.split(',')]
             break
     if fields:
         obj_list = obj_list.order_by(",".join(fields))
     return obj_list
Beispiel #5
0
    def apply_sorting(self, obj_list, options=None):
        """
        Dojo aware filtering
        """
        fields = []
        for key in options.keys():
            if RE_SORT.match(key):
                fields = RE_SORT.search(key).group(1)
                fields = [f.strip() for f in fields.split(',')]
                break
        if fields:
            for f in fields:
                reverse = False
                if f.startswith('-'):
                    reverse = True
                    f = f[1:]
                obj_list = sorted(obj_list, key=lambda x: getattr(x, f), reverse=reverse) 

        return obj_list
Beispiel #6
0
    def apply_sorting(self, obj_list, options=None):
        """
        Dojo aware filtering
        """
        fields = []
        for key in options.keys():
            if RE_SORT.match(key):
                fields = RE_SORT.search(key).group(1)
                fields = [f.strip() for f in fields.split(',')]
                break
        if fields:
            for f in fields:
                reverse = False
                if f.startswith('-'):
                    reverse = True
                    f = f[1:]
                obj_list = sorted(obj_list, key=lambda x: getattr(x, f), reverse=reverse)

        return obj_list