skip to navigation
skip to content

collective.regjsonify 0.2.0

Export Plone registry content to a JSON compatible Python structure

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
 
File Type Py Version Uploaded on Size
collective.regjsonify-0.2.0.tar.gz (md5) Source 2015-08-25 13KB