コード例 #1
0
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())
コード例 #2
0
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())
コード例 #3
0
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())
コード例 #4
0
def _get_all_prospects():
    return Prospect.all()