redis的对象键映射器
ok-redis的Python项目详细描述
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
许可证
麻省理工学院