Plone注册表问题:重启和权限问题后数据消失

时间:2015-11-13 21:02:54

标签: plone

运行Plone 5.0.0

1。注册管理机构许可问题

我正在做类似以下的检索:

registry = getUtility(IRegistry)
building_hours = registry['polklibrary.hours.cache']
return building_hours

登录时效果很好,但对于匿名用户,它返回None类型。不会抛出错误。我有点失落为什么?可能是因为#2。

2。重新启动plone后,注册表中的数据将丢失。

#1中的小时类型是Dict类型(在注册表中允许)。但是重启时会丢失。

我没有运气检查了所有这些资源: https://pypi.python.org/pypi/plone.registry https://github.com/plone/plone.app.registry

(顺便说一下,注册表真棒!)

编辑:

保存数据的内容: https://github.com/polklibrary/polklibrary.google.hours/blob/master/polklibrary.google.hours/src/polklibrary/google/hours/browser/cron.py

读取数据的内容: https://github.com/polklibrary/polklibrary.google.hours/blob/master/polklibrary.google.hours/src/polklibrary/google/hours/browser/feeds.py

1 个答案:

答案 0 :(得分:8)

这是因为字典不是持久性的。 Zope数据库没有意识到您已对字典进行了更改。你需要给它一个提示。最简单的方法是明确保存整个字典,就像这样:

registry['polklibrary.google.hours.cache'] = registry['polklibrary.google.hours.cache']