diff --git a/app/access/viewsets/organization.py b/app/access/viewsets/organization.py index 354512f8d..bd9c9565f 100644 --- a/app/access/viewsets/organization.py +++ b/app/access/viewsets/organization.py @@ -75,13 +75,22 @@ class ViewSet( ModelViewSet ): def get_serializer_class(self): + if self.serializer_class: + + return self.serializer_class + + if ( self.action == 'list' or self.action == 'retrieve' ): - return globals()[str( self.model._meta.verbose_name) + 'ViewSerializer'] + self.serializer_class = globals()[str( self.model._meta.verbose_name) + 'ViewSerializer'] + + else: + + self.serializer_class = globals()[str( self.model._meta.verbose_name) + 'ModelSerializer'] - return globals()[str( self.model._meta.verbose_name) + 'ModelSerializer'] + return self.serializer_class diff --git a/app/access/viewsets/team_user.py b/app/access/viewsets/team_user.py index a982288f6..319e3b46e 100644 --- a/app/access/viewsets/team_user.py +++ b/app/access/viewsets/team_user.py @@ -184,15 +184,24 @@ def get_queryset(self): def get_serializer_class(self): + if self.serializer_class: + + return self.serializer_class + + if ( self.action == 'list' or self.action == 'retrieve' ): - return globals()[str( self.model._meta.verbose_name).replace(' ', '') + 'ViewSerializer'] + self.serializer_class = globals()[str( self.model._meta.verbose_name).replace(' ' , '') + 'ViewSerializer'] + + else: + + self.serializer_class = globals()[str( self.model._meta.verbose_name).replace(' ' , '') + 'ModelSerializer'] - return globals()[str( self.model._meta.verbose_name).replace(' ', '') + 'ModelSerializer'] + return self.serializer_class def get_return_url(self): diff --git a/app/api/viewsets/common.py b/app/api/viewsets/common.py index d3b45d002..577b9d805 100644 --- a/app/api/viewsets/common.py +++ b/app/api/viewsets/common.py @@ -561,6 +561,12 @@ class ModelViewSetBase( _Optional_, Used by API text search as the fields to search. """ + serializer_class = None + """Serializer class to use, + + If not used, use get_serializer_class function and cache the class here. + """ + def get_queryset(self): @@ -582,15 +588,24 @@ def get_queryset(self): def get_serializer_class(self): + if self.serializer_class: + + return self.serializer_class + + if ( self.action == 'list' or self.action == 'retrieve' ): - return globals()[str( self.model._meta.verbose_name) + 'ViewSerializer'] + self.serializer_class = globals()[str( self.model._meta.verbose_name) + 'ViewSerializer'] + + else: + + self.serializer_class = globals()[str( self.model._meta.verbose_name) + 'ModelSerializer'] - return globals()[str( self.model._meta.verbose_name) + 'ModelSerializer'] + return self.serializer_class diff --git a/app/assistance/viewsets/knowledge_base.py b/app/assistance/viewsets/knowledge_base.py index 82f71bd06..a3baa1528 100644 --- a/app/assistance/viewsets/knowledge_base.py +++ b/app/assistance/viewsets/knowledge_base.py @@ -82,13 +82,22 @@ class ViewSet( ModelViewSet ): def get_serializer_class(self): + if self.serializer_class: + + return self.serializer_class + + if ( self.action == 'list' or self.action == 'retrieve' ): - return globals()[str( self.model._meta.verbose_name).replace(' ', '') + 'ViewSerializer'] + self.serializer_class = globals()[str( self.model._meta.verbose_name).replace(' ' , '') + 'ViewSerializer'] + + else: + + self.serializer_class = globals()[str( self.model._meta.verbose_name).replace(' ' , '') + 'ModelSerializer'] - return globals()[str( self.model._meta.verbose_name).replace(' ', '') + 'ModelSerializer'] + return self.serializer_class diff --git a/app/assistance/viewsets/model_knowledge_base_article.py b/app/assistance/viewsets/model_knowledge_base_article.py index a95a9c7fa..019bd6460 100644 --- a/app/assistance/viewsets/model_knowledge_base_article.py +++ b/app/assistance/viewsets/model_knowledge_base_article.py @@ -138,15 +138,23 @@ def get_queryset(self): def get_serializer_class(self): - all_models = apps.get_models() - + # all_models = apps.get_models() + + if self.serializer_class: + + return self.serializer_class + + if ( self.action == 'list' or self.action == 'retrieve' ): - return globals()[str( self.model._meta.verbose_name).replace(' ', '') + 'ViewSerializer'] + self.serializer_class = globals()[str( self.model._meta.verbose_name).replace(' ' , '') + 'ViewSerializer'] + + else: + self.serializer_class = globals()[str( self.model._meta.verbose_name).replace(' ' , '') + 'ModelSerializer'] - return globals()[str( self.model._meta.verbose_name).replace(' ', '') + 'ModelSerializer'] + return self.serializer_class diff --git a/app/config_management/viewsets/config_group.py b/app/config_management/viewsets/config_group.py index ce46e4054..8bd75a8a4 100644 --- a/app/config_management/viewsets/config_group.py +++ b/app/config_management/viewsets/config_group.py @@ -94,13 +94,22 @@ def get_queryset(self): def get_serializer_class(self): + if self.serializer_class: + + return self.serializer_class + + if ( self.action == 'list' or self.action == 'retrieve' ): - return globals()[str( self.model._meta.verbose_name).replace(' ', '') + 'ViewSerializer'] + self.serializer_class = globals()[str( self.model._meta.verbose_name).replace(' ' , '') + 'ViewSerializer'] + + else: + + self.serializer_class = globals()[str( self.model._meta.verbose_name).replace(' ' , '') + 'ModelSerializer'] - return globals()[str( self.model._meta.verbose_name).replace(' ', '') + 'ModelSerializer'] + return self.serializer_class diff --git a/app/config_management/viewsets/config_group_software.py b/app/config_management/viewsets/config_group_software.py index 92cdc95fe..1097fd78e 100644 --- a/app/config_management/viewsets/config_group_software.py +++ b/app/config_management/viewsets/config_group_software.py @@ -86,13 +86,22 @@ def get_queryset(self): def get_serializer_class(self): + if self.serializer_class: + + return self.serializer_class + + if ( self.action == 'list' or self.action == 'retrieve' ): - return globals()[str( self.model._meta.verbose_name).replace(' ', '') + 'ViewSerializer'] + self.serializer_class = globals()[str( self.model._meta.verbose_name).replace(' ' , '') + 'ViewSerializer'] + + else: + + self.serializer_class = globals()[str( self.model._meta.verbose_name).replace(' ' , '') + 'ModelSerializer'] - return globals()[str( self.model._meta.verbose_name).replace(' ', '') + 'ModelSerializer'] + return self.serializer_class diff --git a/app/core/viewsets/manufacturer.py b/app/core/viewsets/manufacturer.py index 86175c6ae..f69dad05b 100644 --- a/app/core/viewsets/manufacturer.py +++ b/app/core/viewsets/manufacturer.py @@ -73,12 +73,21 @@ class ViewSet(ModelViewSet): def get_serializer_class(self): + if self.serializer_class: + + return self.serializer_class + + if ( self.action == 'list' or self.action == 'retrieve' ): - return globals()[str( self.model._meta.verbose_name).replace(' ', '') + 'ViewSerializer'] + self.serializer_class = globals()[str( self.model._meta.verbose_name).replace(' ' , '') + 'ViewSerializer'] + + else: + + self.serializer_class = globals()[str( self.model._meta.verbose_name).replace(' ' , '') + 'ModelSerializer'] - return globals()[str( self.model._meta.verbose_name).replace(' ', '') + 'ModelSerializer'] + return self.serializer_class diff --git a/app/core/viewsets/notes.py b/app/core/viewsets/notes.py index 2dfa73d6c..cdf2c19a8 100644 --- a/app/core/viewsets/notes.py +++ b/app/core/viewsets/notes.py @@ -134,12 +134,21 @@ def get_view_name(self): def get_serializer_class(self): + if self.serializer_class: + + return self.serializer_class + + if ( self.action == 'list' or self.action == 'retrieve' ): - return globals()[str( self.model._meta.verbose_name).replace(' ', '') + 'ViewSerializer'] + self.serializer_class = globals()[str( self.model._meta.verbose_name).replace(' ' , '') + 'ViewSerializer'] + + else: + + self.serializer_class = globals()[str( self.model._meta.verbose_name).replace(' ' , '') + 'ModelSerializer'] - return globals()[str( self.model._meta.verbose_name).replace(' ', '') + 'ModelSerializer'] + return self.serializer_class diff --git a/app/core/viewsets/related_ticket.py b/app/core/viewsets/related_ticket.py index 11aeacc6c..40c876523 100644 --- a/app/core/viewsets/related_ticket.py +++ b/app/core/viewsets/related_ticket.py @@ -89,15 +89,24 @@ class ViewSet(ModelListRetrieveDeleteViewSet): def get_serializer_class(self): + if self.serializer_class: + + return self.serializer_class + + if ( self.action == 'list' or self.action == 'retrieve' ): - return globals()[str( self.model._meta.verbose_name).replace(' ', '') + 'ViewSerializer'] + self.serializer_class = globals()[str( self.model._meta.verbose_name).replace(' ' , '') + 'ViewSerializer'] + + else: + + self.serializer_class = globals()[str( self.model._meta.verbose_name).replace(' ' , '') + 'ModelSerializer'] - return globals()[str( self.model._meta.verbose_name).replace(' ', '') + 'ModelSerializer'] + return self.serializer_class def get_queryset(self): diff --git a/app/core/viewsets/ticket.py b/app/core/viewsets/ticket.py index 4b0da8a48..20565d96f 100644 --- a/app/core/viewsets/ticket.py +++ b/app/core/viewsets/ticket.py @@ -245,6 +245,10 @@ def get_serializer_class(self): serializer_prefix = str(self._ticket_type).replace(' ', '') + if self.serializer_class: + + return self.serializer_class + if ( self.action == 'create' @@ -333,7 +337,13 @@ def get_serializer_class(self): or self.action == 'retrieve' ): - return globals()[serializer_prefix + 'TicketViewSerializer'] + self.serializer_class = globals()[serializer_prefix + 'TicketViewSerializer'] + + else: + self.serializer_class = globals()[serializer_prefix + 'TicketModelSerializer'] + self.serializer_class = globals()[serializer_prefix + 'TicketModelSerializer'] + + return self.serializer_class - return globals()[serializer_prefix + 'TicketModelSerializer'] + return self.serializer_class diff --git a/app/core/viewsets/ticket_category.py b/app/core/viewsets/ticket_category.py index 1529e69b4..86c9231af 100644 --- a/app/core/viewsets/ticket_category.py +++ b/app/core/viewsets/ticket_category.py @@ -73,12 +73,21 @@ class ViewSet(ModelViewSet): def get_serializer_class(self): + if self.serializer_class: + + return self.serializer_class + + if ( self.action == 'list' or self.action == 'retrieve' ): - return globals()[str( self.model._meta.verbose_name).replace(' ', '') + 'ViewSerializer'] + self.serializer_class = globals()[str( self.model._meta.verbose_name).replace(' ' , '') + 'ViewSerializer'] + + else: + + self.serializer_class = globals()[str( self.model._meta.verbose_name).replace(' ' , '') + 'ModelSerializer'] - return globals()[str( self.model._meta.verbose_name).replace(' ', '') + 'ModelSerializer'] + return self.serializer_class diff --git a/app/core/viewsets/ticket_comment.py b/app/core/viewsets/ticket_comment.py index e7f6e82dd..6320e62da 100644 --- a/app/core/viewsets/ticket_comment.py +++ b/app/core/viewsets/ticket_comment.py @@ -212,6 +212,10 @@ def get_queryset(self): def get_serializer_class(self): + if self.serializer_class: + + return self.serializer_class + organization:int = None serializer_prefix:str = 'TicketComment' @@ -335,10 +339,14 @@ def get_serializer_class(self): or self.action == 'retrieve' ): - return globals()['TicketCommentViewSerializer'] + self.serializer_class = globals()['TicketCommentViewSerializer'] - return globals()[str(serializer_prefix).replace(' ', '') + 'ModelSerializer'] + else: + + self.serializer_class = globals()[str(serializer_prefix).replace(' ', '') + 'ModelSerializer'] + + return self.serializer_class diff --git a/app/core/viewsets/ticket_comment_category.py b/app/core/viewsets/ticket_comment_category.py index a736e491b..a609c3162 100644 --- a/app/core/viewsets/ticket_comment_category.py +++ b/app/core/viewsets/ticket_comment_category.py @@ -69,12 +69,21 @@ class ViewSet(ModelViewSet): def get_serializer_class(self): + if self.serializer_class: + + return self.serializer_class + + if ( self.action == 'list' or self.action == 'retrieve' ): - return globals()[str( self.model._meta.verbose_name).replace(' ', '') + 'ViewSerializer'] + self.serializer_class = globals()[str( self.model._meta.verbose_name).replace(' ' , '') + 'ViewSerializer'] + + else: + + self.serializer_class = globals()[str( self.model._meta.verbose_name).replace(' ' , '') + 'ModelSerializer'] - return globals()[str( self.model._meta.verbose_name).replace(' ', '') + 'ModelSerializer'] + return self.serializer_class diff --git a/app/core/viewsets/ticket_linked_item.py b/app/core/viewsets/ticket_linked_item.py index 74f5c39d1..ab1cf0428 100644 --- a/app/core/viewsets/ticket_linked_item.py +++ b/app/core/viewsets/ticket_linked_item.py @@ -200,15 +200,24 @@ def get_parent_model(self): def get_serializer_class(self): + if self.serializer_class: + + return self.serializer_class + + if ( self.action == 'list' or self.action == 'retrieve' ): - return globals()[str( self.model._meta.verbose_name).replace(' ', '') + 'ViewSerializer'] + self.serializer_class = globals()[str( self.model._meta.verbose_name).replace(' ' , '') + 'ViewSerializer'] + + else: + + self.serializer_class = globals()[str( self.model._meta.verbose_name).replace(' ' , '') + 'ModelSerializer'] - return globals()[str( self.model._meta.verbose_name).replace(' ', '') + 'ModelSerializer'] + return self.serializer_class diff --git a/app/itam/viewsets/device.py b/app/itam/viewsets/device.py index 8686ecdb3..f5a62ce60 100644 --- a/app/itam/viewsets/device.py +++ b/app/itam/viewsets/device.py @@ -80,14 +80,24 @@ class ViewSet( ModelViewSet ): view_description = 'Physical Devices' + def get_serializer_class(self): + if self.serializer_class: + + return self.serializer_class + + if ( self.action == 'list' or self.action == 'retrieve' ): - return globals()[str( self.model._meta.verbose_name) + 'ViewSerializer'] + self.serializer_class = globals()[str( self.model._meta.verbose_name) + 'ViewSerializer'] + + else: + + self.serializer_class = globals()[str( self.model._meta.verbose_name) + 'ModelSerializer'] - return globals()[str( self.model._meta.verbose_name) + 'ModelSerializer'] + return self.serializer_class diff --git a/app/itam/viewsets/device_model.py b/app/itam/viewsets/device_model.py index 97fef361a..96dec80e0 100644 --- a/app/itam/viewsets/device_model.py +++ b/app/itam/viewsets/device_model.py @@ -75,12 +75,21 @@ class ViewSet( ModelViewSet ): def get_serializer_class(self): + if self.serializer_class: + + return self.serializer_class + + if ( self.action == 'list' or self.action == 'retrieve' ): - return globals()[str( self.model._meta.verbose_name).replace(' ', '') + 'ViewSerializer'] + self.serializer_class = globals()[str( self.model._meta.verbose_name).replace(' ' , '') + 'ViewSerializer'] + + else: + + self.serializer_class = globals()[str( self.model._meta.verbose_name).replace(' ' , '') + 'ModelSerializer'] - return globals()[str( self.model._meta.verbose_name).replace(' ', '') + 'ModelSerializer'] + return self.serializer_class diff --git a/app/itam/viewsets/device_operating_system.py b/app/itam/viewsets/device_operating_system.py index cbd1f42ad..268aa2a79 100644 --- a/app/itam/viewsets/device_operating_system.py +++ b/app/itam/viewsets/device_operating_system.py @@ -181,12 +181,21 @@ def get_queryset(self): def get_serializer_class(self): + if self.serializer_class: + + return self.serializer_class + + if ( self.action == 'list' or self.action == 'retrieve' ): - return globals()[str( self.model._meta.verbose_name).replace(' ', '') + 'ViewSerializer'] + self.serializer_class = globals()[str( self.model._meta.verbose_name).replace(' ' , '') + 'ViewSerializer'] + + else: + + self.serializer_class = globals()[str( self.model._meta.verbose_name).replace(' ' , '') + 'ModelSerializer'] - return globals()[str( self.model._meta.verbose_name).replace(' ', '') + 'ModelSerializer'] + return self.serializer_class diff --git a/app/itam/viewsets/device_software.py b/app/itam/viewsets/device_software.py index bc282b544..8e158a752 100644 --- a/app/itam/viewsets/device_software.py +++ b/app/itam/viewsets/device_software.py @@ -168,21 +168,30 @@ def get_queryset(self): def get_serializer_class(self): + if self.serializer_class: + + return self.serializer_class + + if ( self.action == 'list' or self.action == 'retrieve' ): - return globals()[str( self.model._meta.verbose_name).replace(' ', '') + 'ViewSerializer'] + self.serializer_class = globals()[str( self.model._meta.verbose_name).replace(' ', '') + 'ViewSerializer'] if 'software_id' in self.kwargs: - return globals()['SoftwareInstallsModelSerializer'] + self.serializer_class = globals()['SoftwareInstallsModelSerializer'] else: - return globals()[str( self.model._meta.verbose_name).replace(' ', '') + 'ModelSerializer'] + self.serializer_class = globals()[str( self.model._meta.verbose_name).replace(' ', '') + 'ModelSerializer'] + + return self.serializer_class + + @property diff --git a/app/itam/viewsets/device_type.py b/app/itam/viewsets/device_type.py index 67b1e1f14..3066ffb86 100644 --- a/app/itam/viewsets/device_type.py +++ b/app/itam/viewsets/device_type.py @@ -74,12 +74,21 @@ class ViewSet( ModelViewSet ): def get_serializer_class(self): + if self.serializer_class: + + return self.serializer_class + + if ( self.action == 'list' or self.action == 'retrieve' ): - return globals()[str( self.model._meta.verbose_name).replace(' ', '') + 'ViewSerializer'] + self.serializer_class = globals()[str( self.model._meta.verbose_name).replace(' ' , '') + 'ViewSerializer'] + + else: + + self.serializer_class = globals()[str( self.model._meta.verbose_name).replace(' ' , '') + 'ModelSerializer'] - return globals()[str( self.model._meta.verbose_name).replace(' ', '') + 'ModelSerializer'] + return self.serializer_class diff --git a/app/itam/viewsets/operating_system.py b/app/itam/viewsets/operating_system.py index 141e3eeae..b7c099f1a 100644 --- a/app/itam/viewsets/operating_system.py +++ b/app/itam/viewsets/operating_system.py @@ -76,12 +76,21 @@ class ViewSet( ModelViewSet ): def get_serializer_class(self): + if self.serializer_class: + + return self.serializer_class + + if ( self.action == 'list' or self.action == 'retrieve' ): - return globals()[str( self.model._meta.verbose_name).replace(' ' , '') + 'ViewSerializer'] + self.serializer_class = globals()[str( self.model._meta.verbose_name).replace(' ' , '') + 'ViewSerializer'] + + else: + + self.serializer_class = globals()[str( self.model._meta.verbose_name).replace(' ' , '') + 'ModelSerializer'] - return globals()[str( self.model._meta.verbose_name).replace(' ' , '') + 'ModelSerializer'] + return self.serializer_class \ No newline at end of file diff --git a/app/itam/viewsets/operating_system_version.py b/app/itam/viewsets/operating_system_version.py index 9786fd4b7..2897bc7d6 100644 --- a/app/itam/viewsets/operating_system_version.py +++ b/app/itam/viewsets/operating_system_version.py @@ -141,12 +141,21 @@ def get_queryset(self): def get_serializer_class(self): + if self.serializer_class: + + return self.serializer_class + + if ( self.action == 'list' or self.action == 'retrieve' ): - return globals()[str( self.model._meta.verbose_name).replace(' ' , '') + 'ViewSerializer'] + self.serializer_class = globals()[str( self.model._meta.verbose_name).replace(' ' , '') + 'ViewSerializer'] + + else: + + self.serializer_class = globals()[str( self.model._meta.verbose_name).replace(' ' , '') + 'ModelSerializer'] - return globals()[str( self.model._meta.verbose_name).replace(' ' , '') + 'ModelSerializer'] + return self.serializer_class diff --git a/app/itam/viewsets/software.py b/app/itam/viewsets/software.py index a7f5858fc..f406a86d7 100644 --- a/app/itam/viewsets/software.py +++ b/app/itam/viewsets/software.py @@ -73,12 +73,21 @@ class ViewSet( ModelViewSet ): def get_serializer_class(self): + if self.serializer_class: + + return self.serializer_class + + if ( self.action == 'list' or self.action == 'retrieve' ): - return globals()[str( self.model._meta.verbose_name) + 'ViewSerializer'] + self.serializer_class = globals()[str( self.model._meta.verbose_name).replace(' ' , '') + 'ViewSerializer'] + + else: + + self.serializer_class = globals()[str( self.model._meta.verbose_name).replace(' ' , '') + 'ModelSerializer'] - return globals()[str( self.model._meta.verbose_name) + 'ModelSerializer'] + return self.serializer_class diff --git a/app/itam/viewsets/software_category.py b/app/itam/viewsets/software_category.py index 71a1bd622..2587d08a7 100644 --- a/app/itam/viewsets/software_category.py +++ b/app/itam/viewsets/software_category.py @@ -71,12 +71,21 @@ class ViewSet( ModelViewSet ): def get_serializer_class(self): + if self.serializer_class: + + return self.serializer_class + + if ( self.action == 'list' or self.action == 'retrieve' ): - return globals()[str( self.model._meta.verbose_name).replace(' ' , '') + 'ViewSerializer'] + self.serializer_class = globals()[str( self.model._meta.verbose_name).replace(' ' , '') + 'ViewSerializer'] + + else: + + self.serializer_class = globals()[str( self.model._meta.verbose_name).replace(' ' , '') + 'ModelSerializer'] - return globals()[str( self.model._meta.verbose_name).replace(' ' , '') + 'ModelSerializer'] + return self.serializer_class diff --git a/app/itam/viewsets/software_version.py b/app/itam/viewsets/software_version.py index ecebbbfae..b9e454d1f 100644 --- a/app/itam/viewsets/software_version.py +++ b/app/itam/viewsets/software_version.py @@ -139,12 +139,21 @@ def get_queryset(self): def get_serializer_class(self): + if self.serializer_class: + + return self.serializer_class + + if ( self.action == 'list' or self.action == 'retrieve' ): - return globals()[str( self.model._meta.verbose_name).replace(' ' , '') + 'ViewSerializer'] + self.serializer_class = globals()[str( self.model._meta.verbose_name).replace(' ' , '') + 'ViewSerializer'] + + else: + + self.serializer_class = globals()[str( self.model._meta.verbose_name).replace(' ' , '') + 'ModelSerializer'] - return globals()[str( self.model._meta.verbose_name).replace(' ' , '') + 'ModelSerializer'] + return self.serializer_class diff --git a/app/itim/viewsets/cluster.py b/app/itim/viewsets/cluster.py index aa60d6e83..0f3b9cae9 100644 --- a/app/itim/viewsets/cluster.py +++ b/app/itim/viewsets/cluster.py @@ -73,12 +73,21 @@ class ViewSet( ModelViewSet ): def get_serializer_class(self): + if self.serializer_class: + + return self.serializer_class + + if ( self.action == 'list' or self.action == 'retrieve' ): - return globals()[str( self.model._meta.verbose_name) + 'ViewSerializer'] + self.serializer_class = globals()[str( self.model._meta.verbose_name).replace(' ' , '') + 'ViewSerializer'] + + else: + + self.serializer_class = globals()[str( self.model._meta.verbose_name).replace(' ' , '') + 'ModelSerializer'] - return globals()[str( self.model._meta.verbose_name) + 'ModelSerializer'] + return self.serializer_class diff --git a/app/itim/viewsets/cluster_type.py b/app/itim/viewsets/cluster_type.py index 9d479311c..d3c6d9826 100644 --- a/app/itim/viewsets/cluster_type.py +++ b/app/itim/viewsets/cluster_type.py @@ -72,12 +72,21 @@ class ViewSet( ModelViewSet ): def get_serializer_class(self): + if self.serializer_class: + + return self.serializer_class + + if ( self.action == 'list' or self.action == 'retrieve' ): - return globals()[str( self.model._meta.verbose_name).replace(' ', '') + 'ViewSerializer'] + self.serializer_class = globals()[str( self.model._meta.verbose_name).replace(' ' , '') + 'ViewSerializer'] + + else: + + self.serializer_class = globals()[str( self.model._meta.verbose_name).replace(' ' , '') + 'ModelSerializer'] - return globals()[str( self.model._meta.verbose_name).replace(' ', '') + 'ModelSerializer'] + return self.serializer_class diff --git a/app/itim/viewsets/port.py b/app/itim/viewsets/port.py index 36c759a97..688ef9d05 100644 --- a/app/itim/viewsets/port.py +++ b/app/itim/viewsets/port.py @@ -71,12 +71,21 @@ class ViewSet( ModelViewSet ): def get_serializer_class(self): + if self.serializer_class: + + return self.serializer_class + + if ( self.action == 'list' or self.action == 'retrieve' ): - return globals()[str( self.model._meta.verbose_name) + 'ViewSerializer'] + self.serializer_class = globals()[str( self.model._meta.verbose_name).replace(' ' , '') + 'ViewSerializer'] + + else: + + self.serializer_class = globals()[str( self.model._meta.verbose_name).replace(' ' , '') + 'ModelSerializer'] - return globals()[str( self.model._meta.verbose_name) + 'ModelSerializer'] + return self.serializer_class diff --git a/app/itim/viewsets/service.py b/app/itim/viewsets/service.py index 207c4d70a..99f843e5f 100644 --- a/app/itim/viewsets/service.py +++ b/app/itim/viewsets/service.py @@ -76,12 +76,21 @@ class ViewSet( ModelViewSet ): def get_serializer_class(self): + if self.serializer_class: + + return self.serializer_class + + if ( self.action == 'list' or self.action == 'retrieve' ): - return globals()[str( self.model._meta.verbose_name) + 'ViewSerializer'] + self.serializer_class = globals()[str( self.model._meta.verbose_name).replace(' ' , '') + 'ViewSerializer'] + + else: + + self.serializer_class = globals()[str( self.model._meta.verbose_name).replace(' ' , '') + 'ModelSerializer'] - return globals()[str( self.model._meta.verbose_name) + 'ModelSerializer'] + return self.serializer_class diff --git a/app/itim/viewsets/service_cluster.py b/app/itim/viewsets/service_cluster.py index 06cba6150..4055287e8 100644 --- a/app/itim/viewsets/service_cluster.py +++ b/app/itim/viewsets/service_cluster.py @@ -45,12 +45,21 @@ def get_queryset(self): def get_serializer_class(self): + if self.serializer_class: + + return self.serializer_class + + if ( self.action == 'list' or self.action == 'retrieve' ): - return globals()[str( self.model._meta.verbose_name).replace(' ', '') + 'ViewSerializer'] + self.serializer_class = globals()[str( self.model._meta.verbose_name).replace(' ' , '') + 'ViewSerializer'] + + else: + + self.serializer_class = globals()[str( self.model._meta.verbose_name).replace(' ' , '') + 'ModelSerializer'] - return globals()[str( self.model._meta.verbose_name).replace(' ', '') + 'ModelSerializer'] + return self.serializer_class diff --git a/app/itim/viewsets/service_device.py b/app/itim/viewsets/service_device.py index 4d4cff864..e82e3949a 100644 --- a/app/itim/viewsets/service_device.py +++ b/app/itim/viewsets/service_device.py @@ -45,12 +45,21 @@ def get_queryset(self): def get_serializer_class(self): + if self.serializer_class: + + return self.serializer_class + + if ( self.action == 'list' or self.action == 'retrieve' ): - return globals()[str( self.model._meta.verbose_name).replace(' ', '') + 'ViewSerializer'] + self.serializer_class = globals()[str( self.model._meta.verbose_name).replace(' ' , '') + 'ViewSerializer'] + + else: + + self.serializer_class = globals()[str( self.model._meta.verbose_name).replace(' ' , '') + 'ModelSerializer'] - return globals()[str( self.model._meta.verbose_name).replace(' ', '') + 'ModelSerializer'] + return self.serializer_class diff --git a/app/project_management/viewsets/project.py b/app/project_management/viewsets/project.py index e47621a85..9983bd7aa 100644 --- a/app/project_management/viewsets/project.py +++ b/app/project_management/viewsets/project.py @@ -80,6 +80,10 @@ class ViewSet( ModelViewSet ): def get_serializer_class(self): + if self.serializer_class: + + return self.serializer_class + organization = None if 'organization' in self.request.data: @@ -104,7 +108,9 @@ def get_serializer_class(self): permissions_required = 'project_management.import_project' ) or self.request.user.is_superuser: - return globals()[str( self.model._meta.verbose_name) + 'ImportSerializer'] + self.serializer_class = globals()[str( self.model._meta.verbose_name) + 'ImportSerializer'] + + return self.serializer_class if ( @@ -112,7 +118,11 @@ def get_serializer_class(self): or self.action == 'retrieve' ): - return globals()[str( self.model._meta.verbose_name) + 'ViewSerializer'] + self.serializer_class = globals()[str( self.model._meta.verbose_name) + 'ViewSerializer'] + + else: + + self.serializer_class = globals()[str( self.model._meta.verbose_name) + 'ModelSerializer'] - return globals()[str( self.model._meta.verbose_name) + 'ModelSerializer'] + return self.serializer_class diff --git a/app/project_management/viewsets/project_milestone.py b/app/project_management/viewsets/project_milestone.py index da19ab06e..5f4e847d2 100644 --- a/app/project_management/viewsets/project_milestone.py +++ b/app/project_management/viewsets/project_milestone.py @@ -131,12 +131,21 @@ def get_queryset(self): def get_serializer_class(self): + if self.serializer_class: + + return self.serializer_class + + if ( self.action == 'list' or self.action == 'retrieve' ): - return globals()[str( self.model._meta.verbose_name).replace(' ', '') + 'ViewSerializer'] + self.serializer_class = globals()[str( self.model._meta.verbose_name).replace(' ' , '') + 'ViewSerializer'] + + else: + + self.serializer_class = globals()[str( self.model._meta.verbose_name).replace(' ' , '') + 'ModelSerializer'] - return globals()[str( self.model._meta.verbose_name).replace(' ', '') + 'ModelSerializer'] + return self.serializer_class diff --git a/app/project_management/viewsets/project_state.py b/app/project_management/viewsets/project_state.py index 58b983215..93967b372 100644 --- a/app/project_management/viewsets/project_state.py +++ b/app/project_management/viewsets/project_state.py @@ -71,12 +71,21 @@ class ViewSet( ModelViewSet ): def get_serializer_class(self): + if self.serializer_class: + + return self.serializer_class + + if ( self.action == 'list' or self.action == 'retrieve' ): - return globals()[str( self.model._meta.verbose_name).replace(' ', '') + 'ViewSerializer'] + self.serializer_class = globals()[str( self.model._meta.verbose_name).replace(' ' , '') + 'ViewSerializer'] + + else: + + self.serializer_class = globals()[str( self.model._meta.verbose_name).replace(' ' , '') + 'ModelSerializer'] - return globals()[str( self.model._meta.verbose_name).replace(' ', '') + 'ModelSerializer'] + return self.serializer_class diff --git a/app/project_management/viewsets/project_type.py b/app/project_management/viewsets/project_type.py index fb702ad2d..63818d786 100644 --- a/app/project_management/viewsets/project_type.py +++ b/app/project_management/viewsets/project_type.py @@ -71,12 +71,21 @@ class ViewSet( ModelViewSet ): def get_serializer_class(self): + if self.serializer_class: + + return self.serializer_class + + if ( self.action == 'list' or self.action == 'retrieve' ): - return globals()[str( self.model._meta.verbose_name).replace(' ', '') + 'ViewSerializer'] + self.serializer_class = globals()[str( self.model._meta.verbose_name).replace(' ' , '') + 'ViewSerializer'] + + else: + + self.serializer_class = globals()[str( self.model._meta.verbose_name).replace(' ' , '') + 'ModelSerializer'] - return globals()[str( self.model._meta.verbose_name).replace(' ', '') + 'ModelSerializer'] + return self.serializer_class diff --git a/app/settings/viewsets/app_settings.py b/app/settings/viewsets/app_settings.py index 2e161c394..e767acbe2 100644 --- a/app/settings/viewsets/app_settings.py +++ b/app/settings/viewsets/app_settings.py @@ -70,12 +70,21 @@ class ViewSet(ModelRetrieveUpdateViewSet): def get_serializer_class(self): + if self.serializer_class: + + return self.serializer_class + + if ( self.action == 'list' or self.action == 'retrieve' ): - return globals()[str( self.model._meta.verbose_name).replace(' ', '') + 'ViewSerializer'] + self.serializer_class = globals()[str( self.model._meta.verbose_name).replace(' ' , '') + 'ViewSerializer'] + + else: + + self.serializer_class = globals()[str( self.model._meta.verbose_name).replace(' ' , '') + 'ModelSerializer'] - return globals()[str( self.model._meta.verbose_name).replace(' ', '') + 'ModelSerializer'] + return self.serializer_class diff --git a/app/settings/viewsets/external_link.py b/app/settings/viewsets/external_link.py index b3e8ca012..e18699509 100644 --- a/app/settings/viewsets/external_link.py +++ b/app/settings/viewsets/external_link.py @@ -67,12 +67,21 @@ class ViewSet(ModelViewSet): def get_serializer_class(self): + if self.serializer_class: + + return self.serializer_class + + if ( self.action == 'list' or self.action == 'retrieve' ): - return globals()[str( self.model._meta.verbose_name).replace(' ', '') + 'ViewSerializer'] + self.serializer_class = globals()[str( self.model._meta.verbose_name).replace(' ' , '') + 'ViewSerializer'] + + else: + + self.serializer_class = globals()[str( self.model._meta.verbose_name).replace(' ' , '') + 'ModelSerializer'] - return globals()[str( self.model._meta.verbose_name).replace(' ', '') + 'ModelSerializer'] + return self.serializer_class diff --git a/app/settings/viewsets/user_settings.py b/app/settings/viewsets/user_settings.py index 8a5ad2d70..c2d52e8e4 100644 --- a/app/settings/viewsets/user_settings.py +++ b/app/settings/viewsets/user_settings.py @@ -70,12 +70,21 @@ class ViewSet(ModelRetrieveUpdateViewSet): def get_serializer_class(self): + if self.serializer_class: + + return self.serializer_class + + if ( self.action == 'list' or self.action == 'retrieve' ): - return globals()[str( self.model._meta.verbose_name).replace(' ', '') + 'ViewSerializer'] + self.serializer_class = globals()[str( self.model._meta.verbose_name).replace(' ' , '') + 'ViewSerializer'] + + else: + + self.serializer_class = globals()[str( self.model._meta.verbose_name).replace(' ' , '') + 'ModelSerializer'] - return globals()[str( self.model._meta.verbose_name).replace(' ', '') + 'ModelSerializer'] + return self.serializer_class