コード例 #1
0
ファイル: search.py プロジェクト: Panos512/inspire-next
def perform_es_search(q, index, start=0, size=10, sort=None, fields=None):
    """Helper to use elasticsearch_dsl with Spires/Invenio syntax."""
    query = IQ(q)

    search = RecordsSearch(index=index).query(query)
    if sort:
        search = search.sort(sort)
    if fields and isinstance(fields, list):
        search = search.extra(_source={'include': fields})
    return search[start:start + size].execute()