0001-api-check-members-presence-before-removing-them-5086.patch
src/authentic2/api_views.py | ||
---|---|---|
921 | 921 |
status=status.HTTP_201_CREATED) |
922 | 922 | |
923 | 923 |
def delete(self, request, *args, **kwargs): |
924 |
self.role.members.remove(self.member) |
|
924 |
# prevent useless m2m_changed signals |
|
925 |
if self.role.members.filter(id=self.member.id): |
|
926 |
self.role.members.remove(self.member) |
|
925 | 927 |
return Response({'result': 1, 'detail': _('User successfully removed from role')}, |
926 | 928 |
status=status.HTTP_200_OK) |
927 | 929 | |
... | ... | |
978 | 980 |
status=status.HTTP_201_CREATED) |
979 | 981 | |
980 | 982 |
def delete(self, request, *args, **kwargs): |
981 |
self.role.members.remove(*self.members) |
|
983 |
# prevent useless m2m_changed signals |
|
984 |
members_to_delete = self.role.members.filter(id__in=[member.id for member in self.members]) |
|
985 |
self.role.members.remove(*members_to_delete) |
|
982 | 986 |
return Response( |
983 | 987 |
{ |
984 | 988 |
'result': 1, |
985 |
- |