def relation_instances(self, item, attribute, target_resource, page=None, per_page=None): query = getattr(item, attribute) if page and per_page: return Pagination.from_list(query, page, per_page) else: return query.all()
def relation_instances(self, item, attribute, target_resource, page=None, per_page=None): query = getattr(item, attribute) if isinstance(query, InstrumentedList): if page and per_page: return Pagination.from_list(query, page, per_page) return query if page and per_page: return query.paginate(page=page, per_page=per_page) return query.all()
def relation_instances(self, item, attribute, target_resource, page=None, per_page=None): query = getattr(item, attribute) if isinstance(query, InstrumentedList): if page and per_page: return Pagination.from_list(query, page, per_page) return query if isinstance(target_resource.manager, PrincipalManager): read_permission = target_resource.manager._permissions["read"] query = read_permission.apply_filters(query) if page and per_page: return query.paginate(page=page, per_page=per_page) return query.all()
def relation_instances(self, item, attribute, target_resource, page=None, per_page=None): query = getattr(item, attribute) if isinstance(query, InstrumentedList): if page and per_page: return Pagination.from_list(query, page, per_page) return query if isinstance(target_resource.manager, PrincipalManager): read_permission = target_resource.manager._permissions['read'] query = read_permission.apply_filters(query) if page and per_page: return query.paginate(page=page, per_page=per_page) return query.all()
def paginated_instances(self, page, per_page, where=None, sort=None): instances = self.instances(where=where, sort=sort) if isinstance(instances, list): return Pagination.from_list(instances, page, per_page) return instances.paginate(page=page, per_page=per_page)