redis的对象键映射器

ok-redis的Python项目详细描述


Build statusPython versionsMonthly downloadsSoftware license

redis的对象键映射器

如果您在python上使用过redis,那么必须处理redis键。 有时,lots个redis键。这么多钥匙,做起来很容易 错误,尤其是因为键只是字符串。我构建了ok,以便 我不需要使用redis键的字符串。

使用方法如下:

importokimportredisclassUser(ok.Key):fields=['timeline','followers','following']# Get user mixxorz' timeliner=redis.StrictRedis()r.zrevrange(User('mixxorz').timeline,0,50)# ZREVRANGE User:mixxorz:timeline 0 50

管理你的钥匙变得不那么脆弱了。

安装

从pypi安装它

$ pip install ok-redis

用法

访问字段。

classUser(ok.Key):fields=['timeline','followers','following']print(User('mixxorz').timeline)# User:mixxorz:timeline

链条钥匙。

classCity(ok.Key):fields=['tweets_hll']classCountry(ok.Key):subkeys=[City]print(Country('PH').City('Manila').tweets_hll)# Country:PH:City:Manila:tweets

子键可以是键的绝对路径或相对路径。

# mod_one.pyclassRefer(Key):fields=['elements']# mod_two.pyclassParent(Key):subkeys=['..mod_one.Refer']print(Parent('foo').Refer('bar').elements)# Parent:foo:Refer:bar:elements

键实例的字符串表示是键,因此您可以像 这个:

classUser(ok.Key):passr.get(User('mixxorz'))

但是您也可以显式地访问密钥。

User('mixxorz').key# >>> User:mixxorz

ID是可选的。

classUser(ok.Key):fields=['rankings']print(User().rankings)# User:rankings

id不必是字符串

classUser(ok.Key)passprint(User(123))# User:123

您可以更改用于键的字符串。

classFacebook(ok.Key):fields=['all_posts']class_key='fb'print(Facebook().all_posts)# fb:all_posts

许可证

麻省理工学院

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
java如何计算安卓摄像头的光圈角度   客户端应用C++ java SOLR   java为什么要打印这个输出,似乎不合适   java正在从字符串获取信息。安卓 studio中的xml不起作用   java检查TreeView JavaFX中的所有CheckBoxTreeCells   基于内部映射的java通用返回类型?   Struts操作中的java多入口点(迁移Struts 2.2.3>2.3.1)   java按属性激活Maven概要文件不适用于依赖项目吗?   JavaWildfly:是否可以在EAR的EJB模块内定义websocket端点?   Android我怎么能找到Java代码两点之间的距离?   java WebDriverWait未使用Selenium 3.3.1编译   java Jhipster实体子生成器:如何创建liquibase增量变更日志?   java是否有使用JasperReports的气泡图资源?   hibernatecore的java渐变构建:如何正确添加依赖项?   java为什么处理trycatch而不抛出任何异常不会降低程序的速度?   java解析XSD以列出元素   java Hibernate 4.1至5.1 SessionFactory ConnectionProvider   使用DropWizardian的java调度作业