0

我知道 ORM 和 redis 很奇怪,但是。我的 redis 服务器是一个存储(不是临时的)。所以我发现了一些查询和命令,但现在我想知道如何以最佳方式使用它。众所周知,ORM 已经足够好了(ActiveRecord、Doctrine2 等)。所以给我你的想法如何创建模型并将它与redis db一起使用。

我的想法是创建一些将加载(predis)并使用它的抽象类但我不知道如何制作'columns'的检查器\管理器(是的,我知道redis没有列之类的东西),简单的例子,我们称之为

hset('user:id_111', 'username'. 'admin')
hset('user:id_111', 'password'. 'pass')
hset('user:id_111', 'email'. 'some@mail.com')
hset('user:id_111', 'confirmed'. '1')

之后我们应该有一个模型,它将返回我们需要的所有方法(它们将被手动编写)

$oModel->getUserName();
$oModel->getPassword();
$oModel->getEmail();
$oModel->getConfirmed();

所以现在的问题是调用查询,基本上在抽象模型中我们应该创建 Predis\Client() 但是嘿,它将在每个模型中创建(是不是很糟糕?)!

在更改模型中的数据时,我们是否检查了所有变量\值,简单的例子我们应该对不正确的数据做什么?异常或根本不保存模型并在模型中保存错误?

您有任何想法\想法,请分享。

PS:不需要代码,足够的将描述你如何看待这个

4

1 回答 1

0

我最近需要解决同样的问题;我开始为 redis 构建一个 orm。它仍处于开发初期,但可能会对您有所帮助https://github.com/tystr/redis-orm

于 2014-08-03T23:49:01.403 回答