nodes: 0, module; 1, function_definition; 2, function_name:lookup_field_orderable; 3, parameters; 4, block; 5, identifier:self; 6, identifier:field; 7, expression_statement; 8, try_statement; 9, comment:"""
          Returns whether the passed in field is sortable or not, by default all 'raw' fields, that
          is fields that are part of the model are sortable.
          """; 10, block; 11, except_clause; 12, expression_statement; 13, return_statement; 14, identifier:Exception; 15, comment:# that field doesn't exist, so not sortable; 16, block; 17, call; 18, True; 19, return_statement; 20, attribute; 21, argument_list; 22, False; 23, attribute; 24, identifier:get_field_by_name; 25, identifier:field; 26, attribute; 27, identifier:_meta; 28, identifier:self; 29, identifier:model
code: def lookup_field_orderable(self, field):
          """
          Returns whether the passed in field is sortable or not, by default all 'raw' fields, that
          is fields that are part of the model are sortable.
          """
          try:
              self.model._meta.get_field_by_name(field)
              return True
          except Exception:
              # that field doesn't exist, so not sortable
              return False