コード例 #1
0
def _zsite_tag_po_new(zsite_id, po, cid, rank=1):
    po_id = po.id
    cid = int(cid)
    tag_po = PoZsiteTag.get_or_create(po_id=po_id, cid=po.cid, zsite_id=zsite_id)
    tag_po.rank = rank
    tag_po.save()

    user_id = po.user_id
    if user_id:
        user_rank = zsite_list_get(user_id, zsite_id, CID_TAG)
        if not user_rank:
            user_rank = zsite_list_new(user_id, zsite_id, CID_TAG)
        else:
            user_rank.rank += 1
            user_rank.save()

    mc_flush(zsite_id, po_id)

    rec_read_new(po_id, zsite_id)
    if cid in REDIS_REC_CID_DICT:
        #print zsite_id, po, cid

        p = redis.pipeline()

        #将分数放到相应的ranged set里面
        key = REDIS_TAG_CID%(zsite_id, cid)
        p.zadd(key, po_id, hot(1, 0, po.create_time))

        key = REDIS_TAG_CID_COUNT%zsite_id
        p.hincrby(key, cid, 1)

        p.execute()

    return tag_po
コード例 #2
0
ファイル: po_tag.py プロジェクト: xqk/42qu_github_mirror
def _zsite_tag_po_new(zsite_id, po, cid, rank=1):
    po_id = po.id
    cid = int(cid)
    tag_po = PoZsiteTag.get_or_create(po_id=po_id,
                                      cid=po.cid,
                                      zsite_id=zsite_id)
    tag_po.rank = rank
    tag_po.save()

    user_id = po.user_id
    if user_id:
        user_rank = zsite_list_get(user_id, zsite_id, CID_TAG)
        if not user_rank:
            user_rank = zsite_list_new(user_id, zsite_id, CID_TAG)
        else:
            user_rank.rank += 1
            user_rank.save()

    mc_flush(zsite_id, po_id)

    rec_read_new(po_id, zsite_id)
    if cid in REDIS_REC_CID_DICT:
        #print zsite_id, po, cid

        p = redis.pipeline()

        #将分数放到相应的ranged set里面
        key = REDIS_TAG_CID % (zsite_id, cid)
        p.zadd(key, po_id, hot(1, 0, po.create_time))

        key = REDIS_TAG_CID_COUNT % zsite_id
        p.hincrby(key, cid, 1)

        p.execute()

    return tag_po
コード例 #3
0
ファイル: po_tag.py プロジェクト: xqk/42qu_github_mirror
def po_score(po):
    po_id = po.id
    score = int(redis.hget(REDIS_REC_PO_SCORE, po_id) or 0)
    return hot(score, 0, po.create_time)
コード例 #4
0
def po_score(po):
    po_id = po.id
    score = int(redis.hget(REDIS_REC_PO_SCORE, po_id) or 0)
    return hot(score, 0, po.create_time)