Export Plone registry content to a JSON compatible Python structure
Quickly export the content of a Plone registry configuration (defined by an interface) in a Python structure compatible with JSON format:
import json from collective.regjsonify.interfaces import IJSONifier from plone.registry.interfaces import IRegistry from zope.component import queryUtility registry = queryUtility(IRegistry) settings = registry.forInterface(IYouInterfaceSettings) python_data = IJSONifier(settings).json() json_data = json.dumps(python_data)
The package came with a default set of know data types that cover common fields used in Plone registry. However this set can be not complete if you are using a not supported field type.
During export operation unknown data are ignored.
If you want to export other types you must manually provide the proper IJSONFieldDumper adapter:
<adapter factory="your.package.YouExportAdapter" provides="collective.regjsonify.interfaces.IJSONFieldDumper" for="3rd.party.field.interfaces.INewFieldType" />
- Recusively traverse all of the interface’s parents attributes [keul]
- Added an IObject field adapter. There’s no more need that the persistent field implements another interface (see changes in tests). Also: custom IObject derived fields are now automatically supported. [keul]
- Initial release