Remove PreserveGetQuerySet mixin. Update SingleObjectList and

MultipleObjectFormActionView views to use a new get_object_list method.

Signed-off-by: Roberto Rosario <roberto.rosario.gonzalez@gmail.com>
This commit is contained in:
Roberto Rosario
2017-08-16 22:11:22 -04:00
parent c43f5eb66e
commit 2052caada4
39 changed files with 540 additions and 508 deletions

View File

@@ -18,8 +18,8 @@ __all__ = (
'DeleteExtraDataMixin', 'DynamicFormViewMixin', 'ExtraContextMixin',
'FormExtraKwargsMixin', 'MultipleObjectMixin', 'ObjectActionMixin',
'ObjectListPermissionFilterMixin', 'ObjectNameMixin',
'ObjectPermissionCheckMixin', 'PreserveGetQuerysetMixin',
'RedirectionMixin', 'ViewPermissionCheckMixin'
'ObjectPermissionCheckMixin', 'RedirectionMixin',
'ViewPermissionCheckMixin'
)
@@ -266,26 +266,6 @@ class ObjectPermissionCheckMixin(object):
).dispatch(request, *args, **kwargs)
class PreserveGetQuerysetMixin(object):
"""
Allows class based views to define a get_queryset method that doesn't
overrided the parent classe's get_queryset method
"""
def __init__(self, *args, **kwargs):
result = super(PreserveGetQuerysetMixin, self).__init__(*args, **kwargs)
if not hasattr(self.__class__, 'original_get_queryset'):
if not self.__class__.mro()[0].get_queryset == PreserveGetQuerysetMixin.get_queryset:
setattr(self.__class__, 'original_get_queryset', self.__class__.mro()[0].get_queryset)
self.__class__.mro()[0].get_queryset = PreserveGetQuerysetMixin.get_queryset
return result
def get_queryset(self, *args, **kwargs):
if hasattr(self.__class__, 'original_get_queryset'):
self.queryset = self.__class__.original_get_queryset(self, *args, **kwargs)
return super(PreserveGetQuerysetMixin, self).get_queryset(*args, **kwargs)
class RedirectionMixin(object):
post_action_redirect = None
action_cancel_redirect = None