Export Plone registry content to a JSON compatible Python structure
Project description
Introduction
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)
Extending
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"
/>
Changelog
0.2.0 (2015-08-25)
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]
0.1.0 (2014-05-02)
Initial release
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Hashes for collective.regjsonify-0.2.0.tar.gz
Algorithm | Hash digest | |
---|---|---|
SHA256 | 687ab1ebc8419480cdf15ac2bccedaed849ae9ebc162eaf7f00a766998765f05 |
|
MD5 | ca00516dc5a16bd5fbe5ff153bc02e4f |
|
BLAKE2b-256 | 8a9a7eaff56326caa3beab09f0139c5d76a7b60fc9aba174227a40c72329a783 |