本文整理汇总了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;未经允许,请勿转载。 |
请发表评论