当前位置: 首页>>代码示例>>Python>>正文


Python cache.set_multi函数代码示例

本文整理汇总了Python中r2.config.cache.set_multi函数的典型用法代码示例。如果您正苦于以下问题:Python set_multi函数的具体用法?Python set_multi怎么用?Python set_multi使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。


在下文中一共展示了set_multi函数的5个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。

示例1: _load_multi

    def _load_multi(cls, need):
        need = tup(need)
        need_ids = [n._id for n in need]
        datas = cls._get_data(cls._type_id, need_ids)
        to_save = {}
        try:
            essentials = object.__getattribute__(cls, "_essentials")
        except AttributeError:
            essentials = ()

        for i in need:
            #if there wasn't any data, keep the empty dict
            i._t.update(datas.get(i._id, i._t))
            i._loaded = True

            for attr in essentials:
                if attr not in i._t:
                    print "Warning: %s is missing %s" % (i._fullname, attr)
            i._asked_for_data = True
            to_save[i._id] = i

        prefix = thing_prefix(cls.__name__)

        #write the data to the cache
        cache.set_multi(to_save, prefix=prefix)
开发者ID:Asimov4,项目名称:dobands,代码行数:25,代码来源:thing.py

示例2: _load_multi

    def _load_multi(cls, need):
        need = tup(need)
        need_ids = [n._id for n in need]
        datas = cls._get_data(cls._type_id, need_ids)
        to_save = {}
        for i in need:
            #if there wasn't any data, keep the empty dict
            i._t.update(datas.get(i._id, i._t))
            i._loaded = True
            to_save[i._id] = i

        prefix = thing_prefix(cls.__name__)

        #avoid race condition when incrementing data int props by
        #putting all the int props into the cache.

        #prop prefix
        def pp(prop, id):
            return prop + '_' + str(i._id)

        #do defined data props first, this also checks default values
        for prop in cls._data_int_props:
            for i in need:
                to_save[pp(prop, i._id)] = getattr(i, prop)

        #int props based on the suffix
        for i in need:
            for prop, val in i._t.iteritems():
                if cls._int_prop_suffix and prop.endswith(cls._int_prop_suffix):
                    to_save[pp(prop, i._id)] = val

        cache.set_multi(to_save, prefix)
开发者ID:MichaelBlume,项目名称:lesswrong,代码行数:32,代码来源:thing.py

示例3: ratelimit

    def ratelimit(self, rate_user = False, rate_ip = False, prefix = "rate_"):
        to_set = {}
        seconds = g.RATELIMIT*60
        expire_time = datetime.now(g.tz) + timedelta(seconds = seconds)
        if rate_user and c.user_is_loggedin:
            to_set['user' + str(c.user._id36)] = expire_time
        if rate_ip:
            to_set['ip' + str(request.ip)] = expire_time

        cache.set_multi(to_set, prefix, time = seconds)
开发者ID:cmak,项目名称:reddit,代码行数:10,代码来源:validator.py

示例4: items_db

        def items_db(ids):
            items = cls._get_item(cls._type_id, ids)
            for i in items.keys():
                items[i] = cls._build(i, items[i])

            #avoid race condition when incrmenting int props (data int
            #props are set in load_multi)
            for prop in cls._int_props:
                keys = dict((i, getattr(item, prop))
                            for i, item in items.iteritems())
                cache.set_multi(keys, prefix + prop + '_' )

            return items
开发者ID:MichaelBlume,项目名称:lesswrong,代码行数:13,代码来源:thing.py

示例5: _load_multi

    def _load_multi(cls, need):
        need = tup(need)
        need_ids = [n._id for n in need]
        datas = cls._get_data(cls._type_id, need_ids)
        to_save = {}
        for i in need:
            #if there wasn't any data, keep the empty dict
            i._t.update(datas.get(i._id, i._t))
            i._loaded = True
            to_save[i._id] = i

        prefix = thing_prefix(cls.__name__)

        #write the data to the cache
        cache.set_multi(to_save, prefix=prefix)
开发者ID:XieConnect,项目名称:reddit,代码行数:15,代码来源:thing.py


注:本文中的r2.config.cache.set_multi函数示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。