# redis_orm_for_cplus **Repository Path**: giantserver/redis_orm_for_cplus ## Basic Information - **Project Name**: redis_orm_for_cplus - **Description**: redis orm for c++ - **Primary Language**: C++ - **License**: MIT - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 1 - **Forks**: 4 - **Created**: 2017-04-06 - **Last Updated**: 2020-12-19 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # redis_orm_for_cplus ## 用法说明: * 1、在 src/db/redis_def目录下定义好需要生成的redis描述文件。格式参考test.json * 3、点击 tool/redis2cpp/gen.bat * 4、打开 src/build/gvoe.sln 编译代码 * 5、以上 ## 支持的redis类型 * str * list * hashmap * set * zset 目前不支持 * 复合类型嵌套 ## 用法实例(python版) import gvoe def test1(): dbobj1 = gvoe.rb_test() dbobj1.set_id("user_subitem-1001") dbobj1.data1_set("aaa111") dbobj1.data2_lpush(["1"]) dbobj1.data3_sadd(["1"]) dbobj1.data4_hset("1", "111") dbobj1.save() dbobj4 = gvoe.rb_user() dbobj4.set_id("user-1001") dbobj4.data1_set(dbobj1) dbobj4.save() dbobj7 = gvoe.rb_room() dbobj7.set_id("room-1001") dbobj7.users1_set(dbobj4) dbobj7.save() def test2_on_load(result, args): (dbobj,) = args gvoe.warn("result:%d" % (result)) gvoe.warn("\ndata:\n%s" % (dbobj.to_string())) user = dbobj.users1_get() dbobj.delete_recursively() def test2(): dbobj = gvoe.rb_room("room-1001") dbobj.load(test2_on_load, (dbobj, )) def start(run_container, args, cfg): gvoe.enable_module(gvoe.E_MODULE_ID.e_module_id_redis_orm) test1() test2() ## TODO - 剥离redis_client相关模块、规范接口,方便其他异步redis_client接入 - 支持lua - 增加C++例子 - 等hiredis-vip更新支持密码验证后,完整支持hiredis-vip