本文整理汇总了Python中osf.models.AbstractNode.bulk_update_search方法的典型用法代码示例。如果您正苦于以下问题:Python AbstractNode.bulk_update_search方法的具体用法?Python AbstractNode.bulk_update_search怎么用?Python AbstractNode.bulk_update_search使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类osf.models.AbstractNode
的用法示例。
在下文中一共展示了AbstractNode.bulk_update_search方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。
示例1: migrate_nodes
# 需要导入模块: from osf.models import AbstractNode [as 别名]
# 或者: from osf.models.AbstractNode import bulk_update_search [as 别名]
def migrate_nodes(index, query=None):
logger.info('Migrating nodes to index: {}'.format(index))
node_query = Q('is_public', 'eq', True) & Q('is_deleted', 'eq', False)
if query:
node_query = query & node_query
total = Node.find(node_query).count()
increment = 200
total_pages = (total // increment) + 1
pages = paginated(Node, query=node_query, increment=increment, each=False, include=['contributor__user__guids'])
for page_number, page in enumerate(pages):
logger.info('Updating page {} / {}'.format(page_number + 1, total_pages))
Node.bulk_update_search(page, index=index)
logger.info('Nodes migrated: {}'.format(total))