From 1b059b24df439c093fa189090d2b3c0ae0b9ceb9 Mon Sep 17 00:00:00 2001 From: luukas Date: Fri, 20 May 2022 13:15:50 +0300 Subject: [PATCH] Update get_*_column functions Use getattr instead of model_to_dict in single columns. We might want to change the functions later on so peewee's ForeignKeyField primary key shorthand like model.server_id instead of model.server.server_id will work. This will very likely increase performance of the get_*_column functions due to not having to call the model_to_dict function from Peewee's helper library. --- app/classes/models/roles.py | 7 +++---- app/classes/models/servers.py | 6 +++--- app/classes/models/users.py | 15 +++------------ 3 files changed, 9 insertions(+), 19 deletions(-) diff --git a/app/classes/models/roles.py b/app/classes/models/roles.py index e5afcd31..0166244a 100644 --- a/app/classes/models/roles.py +++ b/app/classes/models/roles.py @@ -66,10 +66,9 @@ class HelperRoles: @staticmethod def get_role_column(role_id: t.Union[str, int], column_name: str) -> t.Any: column = getattr(Roles, column_name) - return model_to_dict( - Roles.select(column).where(Roles.role_id == role_id).get(), - only=[column], - )[column_name] + return getattr( + Roles.select(column).where(Roles.role_id == role_id).get(), column_name + ) @staticmethod def add_role(role_name): diff --git a/app/classes/models/servers.py b/app/classes/models/servers.py index 5b7617b1..6e1af166 100644 --- a/app/classes/models/servers.py +++ b/app/classes/models/servers.py @@ -144,10 +144,10 @@ class HelperServers: @staticmethod def get_server_column(server_id: t.Union[str, int], column_name: str) -> t.Any: column = getattr(Servers, column_name) - return model_to_dict( + return getattr( Servers.select(column).where(Servers.server_id == server_id).get(), - only=[column], - )[column_name] + column_name, + ) # ********************************************************************************** # Servers Methods diff --git a/app/classes/models/users.py b/app/classes/models/users.py index 5370d430..f2dc4460 100644 --- a/app/classes/models/users.py +++ b/app/classes/models/users.py @@ -165,19 +165,10 @@ class HelperUsers: @staticmethod def get_user_column(user_id: t.Union[str, int], column_name: str) -> t.Any: column = getattr(Users, column_name) - return model_to_dict( + return getattr( Users.select(column).where(Users.user_id == user_id).get(), - only=[column], - )[column_name] - - @staticmethod - def check_system_user(user_id): - try: - result = Users.get(Users.user_id == user_id).user_id == user_id - if result: - return True - except: - return False + column_name, + ) @staticmethod def get_user_model(user_id: str) -> Users: