def job(cursor=None): qry = Prospect.all() if cursor: qry.with_cursor(cursor) prospects = qry.fetch(200) if not prospects: return to_put = list() index = search.Index(name=PROSPECT_INDEX) for prospect in prospects: try: index.delete(prospect.id) except ValueError: pass fields = [ search.AtomField(name='key', value=prospect.id), search.TextField(name='name', value=prospect.name), search.TextField(name='address', value=prospect.address), search.TextField(name='phone', value=prospect.phone), search.TextField(name='email', value=prospect.email) ] doc = search.Document(doc_id=prospect.id, fields=fields) to_put.append(doc) index.put(to_put) deferred.defer(job, qry.cursor())
def job(cursor=None): qry = Prospect.all() if cursor: qry.with_cursor(cursor) prospects = qry.fetch(200) if not prospects: return for p in prospects: p.categories = list(set(p.categories)) db.put(prospects) deferred.defer(job, qry.cursor())
def job(cursor=None): qry = Prospect.all() if cursor: qry.with_cursor(cursor) prospects = qry.fetch(200) if not prospects: return for p in prospects: if p.status == Prospect.STATUS_ADDED_BY_DISCOVERY: p.categories = ['unclassified'] else: p.categories = Prospect.convert_place_types(p.type) db.put(prospects) deferred.defer(job, qry.cursor())
def _get_all_prospects(): return Prospect.all()