redis的orm

redis-astra的Python项目详细描述


PyPI VersionBuild Status

阿斯特拉红葡萄酒

redis astra是redis的python light orm。

note:版本2与版本1有不可移植的更改。见CHANGELOG.txt

示例:

importredisfromastraimportmodelsdb=redis.StrictRedis(host='127.0.0.1',decode_responses=True)classSiteObject(models.Model):defget_db(self):returndbname=models.CharHash()classUserObject(models.Model):defget_db(self):returndbname=models.CharHash()login=models.CharHash()site=models.ForeignKey(to=SiteObject)sites_list=models.List(to=SiteObject)viewers=models.IntegerField()defsave(self,action,attr=None,value=None):print('\t * %s'%kwargs)

所以您可以这样使用:

>>>user=UserObject(pk=1,name="Mike",viewers=5)*{'action':'post_init','value':{'name':'Mike','viewers':5}}>>>user.login='mike@null.com'*{'action':'pre_assign','attr':'login','value':'mike@null.com'}*{'action':'post_assign','attr':'login','value':'mike@null.com'}>>>user.login'mike@null.com'>>>user.viewers_incr(2)7>>>site=SiteObject(pk=1,name="redis.io")>>>user.site=site*{'attr':'site','action':'m2m_link','value':<ModelSiteObject(pk=1)>}>>>user.sites_list.lpush(site,site,site)3>>>len(user.sites_list)3>>>user.sites_list[2].name'redis.io'>>>user.site=None*{'attr':'site','action':'m2m_remove'}>>>user.remove()*{'action':'pre_remove','attr':'pk','value':'1'}*{'action':'post_remove','attr':'pk','value':'1'}

安装

支持python版本2.6、2.7、3.3、3.4、3.5 redis py版本>;=2.9.1

pip install redis-astra

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

推荐PyPI第三方库


热门话题
Apache Beam代码中的java语法错误插入   java GC实时性显著延长   java使用AppIdentityService进行身份验证时未找到电子表格   Java:纠错码计算器   java调用类文件及其方法   二维数组(Java)以循环顺序打印带有字母的三角形   java打开一个新的数据库连接好吗?还是保持一个连接打开直到进程完成?   java如何阻止在状态栏或屏幕按钮上拖放的项目消失   如何使用Swing在Java中正确实现MVC?   java Android studio mysql服务器超时/连接被拒绝   java随时间改变颜色的RGB值   java如何使用治理API向WSO2治理注册中心注册服务?   java如何重命名现有文件   如何将字符串保存到。java中的txt文件