diff --git a/web/pgadmin/browser/server_groups/servers/databases/schemas/__init__.py b/web/pgadmin/browser/server_groups/servers/databases/schemas/__init__.py index 1611dc3..3b82970 100644 --- a/web/pgadmin/browser/server_groups/servers/databases/schemas/__init__.py +++ b/web/pgadmin/browser/server_groups/servers/databases/schemas/__init__.py @@ -23,6 +23,7 @@ from config import PG_DEFAULT_DRIVER from pgadmin.browser.server_groups.servers.utils import parse_priv_from_db, \ parse_priv_to_db from functools import wraps +from operator import itemgetter """ This module is responsible for generating two nodes @@ -863,8 +864,9 @@ It may have been removed by another user. nodes.extend(module.get_nodes(**kwargs)) else: nodes.extend(module.get_nodes(**kwargs)) - - return make_json_response(data=nodes) + # Sorting nodes based on label + sorted_nodes = sorted(nodes, key=itemgetter('label')) + return make_json_response(data=sorted_nodes) diff --git a/web/pgadmin/browser/utils.py b/web/pgadmin/browser/utils.py index 612fcec..f314223 100644 --- a/web/pgadmin/browser/utils.py +++ b/web/pgadmin/browser/utils.py @@ -10,6 +10,7 @@ """Browser helper utilities""" from abc import abstractmethod +from operator import itemgetter import flask from flask.views import View, MethodViewType, with_metaclass from flask.ext.babel import gettext @@ -280,8 +281,10 @@ class NodeView(with_metaclass(MethodViewType, View)): for module in self.blueprint.submodules: children.extend(module.get_nodes(*args, **kwargs)) + # Sorting nodes based on label + sorted_children = sorted(children, key=itemgetter('label')) - return make_json_response(data=children) + return make_json_response(data=sorted_children) class PGChildNodeView(NodeView): @@ -320,8 +323,9 @@ class PGChildNodeView(NodeView): nodes.extend(module.get_nodes(**kwargs)) else: nodes.extend(module.get_nodes(**kwargs)) - - return make_json_response(data=nodes) + # Sorting nodes based on label + sorted_nodes = sorted(nodes, key=itemgetter('label')) + return make_json_response(data=sorted_nodes) def get_dependencies(self, conn, object_id, where=None): """