nodes: 0, module; 1, function_definition; 2, function_name:get_queryset; 3, parameters; 4, block; 5, identifier:self; 6, expression_statement; 7, expression_statement; 8, comment:# Perform global search; 9, expression_statement; 10, comment:# Perform column search; 11, expression_statement; 12, comment:# Return the ordered queryset; 13, return_statement; 14, string; 15, assignment; 16, assignment; 17, assignment; 18, call; 19, string_content:Apply Datatables sort and search criterion to QuerySet; 20, identifier:qs; 21, call; 22, identifier:qs; 23, call; 24, identifier:qs; 25, call; 26, attribute; 27, argument_list; 28, attribute; 29, argument_list; 30, attribute; 31, argument_list; 32, attribute; 33, argument_list; 34, identifier:qs; 35, identifier:order_by; 36, list_splat; 37, call; 38, identifier:get_queryset; 39, identifier:self; 40, identifier:global_search; 41, identifier:qs; 42, identifier:self; 43, identifier:column_search; 44, identifier:qs; 45, call; 46, identifier:super; 47, argument_list; 48, attribute; 49, argument_list; 50, identifier:DatatablesView; 51, identifier:self; 52, identifier:self; 53, identifier:get_orders
code: def get_queryset(self):
          '''Apply Datatables sort and search criterion to QuerySet'''
          qs = super(DatatablesView, self).get_queryset()
          # Perform global search
          qs = self.global_search(qs)
          # Perform column search
          qs = self.column_search(qs)
          # Return the ordered queryset
          return qs.order_by(*self.get_orders())