@classmethod
def get_queryset(cls, user=None, **kwargs):
    """ Get objects queryset.

        Method is used to generate objects queryset for resource operations.
        It is aimed to:
            * Filter objects based on user. Object could be in queryset only if
            there is attribute-ForeignKey-ManyToMany path from current resource
            to current auth_user.
            * Select related objects (or prefetch them) based on requested
            requested objects to include

        NOTE: use user from parameters, it could be authenticated not with
            session, so request.user might not work

        """
    queryset = cls.Meta.model.objects
    if cls.Meta.authenticators:
        queryset = cls.update_user_queryset(queryset, user, **kwargs)
    return queryset
