From cb85038976db5a2f42320f7710da08e3abee1a64 Mon Sep 17 00:00:00 2001 From: Ryan Petrello Date: Wed, 26 Jul 2017 16:34:08 -0400 Subject: [PATCH] filter credential_type__search from related search fields in API v1 see: https://github.com/ansible/ansible-tower/issues/6116 --- awx/api/views.py | 19 +++++++++++++++---- 1 file changed, 15 insertions(+), 4 deletions(-) diff --git a/awx/api/views.py b/awx/api/views.py index e783b94d0b..ff80ad3264 100644 --- a/awx/api/views.py +++ b/awx/api/views.py @@ -1614,7 +1614,18 @@ class CredentialTypeActivityStreamList(ActivityStreamEnforcementMixin, SubListAP new_in_api_v2 = True -class CredentialList(ListCreateAPIView): +# remove in 3.3 +class CredentialViewMixin(object): + + @property + def related_search_fields(self): + ret = super(CredentialViewMixin, self).related_search_fields + if get_request_version(self.request) == 1 and 'credential_type__search' in ret: + ret.remove('credential_type__search') + return ret + + +class CredentialList(CredentialViewMixin, ListCreateAPIView): model = Credential serializer_class = CredentialSerializerCreate @@ -1649,7 +1660,7 @@ class CredentialOwnerTeamsList(SubListAPIView): return self.model.objects.filter(pk__in=teams) -class UserCredentialsList(SubListCreateAPIView): +class UserCredentialsList(CredentialViewMixin, SubListCreateAPIView): model = Credential serializer_class = UserCredentialSerializerCreate @@ -1666,7 +1677,7 @@ class UserCredentialsList(SubListCreateAPIView): return user_creds & visible_creds -class TeamCredentialsList(SubListCreateAPIView): +class TeamCredentialsList(CredentialViewMixin, SubListCreateAPIView): model = Credential serializer_class = TeamCredentialSerializerCreate @@ -1683,7 +1694,7 @@ class TeamCredentialsList(SubListCreateAPIView): return (team_creds & visible_creds).distinct() -class OrganizationCredentialList(SubListCreateAPIView): +class OrganizationCredentialList(CredentialViewMixin, SubListCreateAPIView): model = Credential serializer_class = OrganizationCredentialSerializerCreate