使用Python-Rom Redis ORM

时间:2015-08-05 15:57:00

标签: python redis

我正在使用flask和redis。我使用rom redis orm来管理一些稍微复杂的数据结构。我想使用一个模型对象队列,能够从任何一端推出或弹出对象。

我有以下rom模型:

class A(rom.Model):
    url = rom.String(required=True, unique=True)()
    t = rom.String()
    delete_at = rom.Float(index=True)
    created_at = rom.Float(default=time.time, index=True)

当我运行obj._columnsobj是类A的单个实例)时,我在命令行看到,有一个id字段。我第一次想到如何解决这个问题的方法是按id订购:

queue = A.get_by(id). 

通过设置:

,可以轻松添加到队列的后面
obj.id = len(queue)+1

但我不确定如何插入列表的0元素,这需要重新编号整个列表的ID。

我在这里走在正确的轨道上吗?实现队列的最佳方法是什么?

1 个答案:

答案 0 :(得分:1)

我不会用rom实现队列。如果我需要一个队列,并且我需要将rom实体放入该队列中,我将使用原始Redis连接将实体ID放入Redis列表中 - 它提供两端的推送和弹出,范围扫描等。

您可以通过以下方式获取示例中的原始Redis连接:A._connection