如何在ZODB中实现持久列表或持久映射

giz*_*gok 2 zope zodb

一对多的关系在ZODB中不起作为列表是可变的.他们说解决方案是持久映射或持久列表或BTree.有人请告诉我它是如何完成的

Dan*_*rro 5

我不确定我理解你的问题.

PersistentMapping的行为与字典相同,但是持久化.PersistentList只是一个持久化的列表.

BTree也表现为字典,但它针对大量对象进行了优化.如果必须处理许多对象,则不应使用PersistentMapping或PersistentList.

对于ZODB关系,您可以像在Python中一样使用对象引用.

如果需要,ZODB甚至支持弱引用.

还有其他专门的软件包,比如z3c.relationfield,来处理ZODB中的关系,例如,如果你需要按关系搜索,但我从来没有需要使用它们.