def index(app): # By creating the index we are actually clearing it, so any tests that # require a clean index, should require this feature. name = app.config['SEARCH_INDEX_NAME'] directory = app.config['SEARCH_INDEX_DIRECTORY'] IndexManager.create(Schema, name, directory) return Index(name, directory)
def main(should_create, index_all, session): name = settings.SEARCH_INDEX_NAME directory = settings.SEARCH_INDEX_DIRECTORY if should_create: print blue("You've asked to (re)create index '{}'.".format(name)) IndexManager.create(Schema, name, directory) if not IndexManager.exists(name, directory): die('Search index does not exist!') index = Index() start = time.time() kwargs = {} if index_all else {'published': True} jobs = session.query(Job).filter_by(**kwargs).all() index.add_document_bulk([job.to_document() for job in jobs]) duration = time.time() - start print green("{0} documents added okay in {1:.2f} ms.".format(len(jobs), duration))
def main(query, session): name = settings.SEARCH_INDEX_NAME directory = settings.SEARCH_INDEX_DIRECTORY if not IndexManager.exists(name, directory): die('Search index does not exist!') if isinstance(query, str): query = unicode(query, 'utf-8') index = Index() for result in index.search(query): job = session.query(Job).get(result['id']) print job
def main(should_create, index_all, session): name = settings.SEARCH_INDEX_NAME directory = settings.SEARCH_INDEX_DIRECTORY if should_create: print blue("You've asked to (re)create index '{}'.".format(name)) IndexManager.create(Schema, name, directory) if not IndexManager.exists(name, directory): die('Search index does not exist!') index = Index() start = time.time() kwargs = {} if index_all else {'published': True} jobs = session.query(Job).filter_by(**kwargs).all() index.add_document_bulk([job.to_document() for job in jobs]) duration = time.time() - start print green("{0} documents added okay in {1:.2f} ms.".format( len(jobs), duration))