collective.jsonify exports your Plone content to JSON.
Many packages that export data from Plone have complicated dependencies, and so
only work with Plone 3.0 or higher (or not even with 3.0).
collective.jsonify’s only dependency is simplejson. It can be installed in
any Plone version as far back as:
- Plone 2.1 (or probably even Plone 2.0, but not tested)
- Zope 2.6.4 (with CMF rather than Plone)
- Python 2.2
The exported JSON is a collective.transmogrifier friendly format. Install
collective.jsonify on a site you want to export from, and setup an import
transmogrifier pipeline on the site you’re importing to, using the blueprints in
the collective.jsonmigrator package.
Alternatively use the provided export script by adding it to an external method as described in using the exporter.
For more information see the documentation.
- Do not require simplejson if we already have the native json module
- When doing an export with export_content and having constraints to skip
items, still allow to walk into subitems of the skipped ones - except for
skipped paths, where the whole path is skipped.
- set json repsonse headers
- Let the wrapper test correctly for zope.interface and Interface
- In the wrapper class, call the value in decode, if it’s a callable.
- When serializing datetime, date, time or DateTime properties, just use the
unicode representation which can be parsed.
- When serializing values, if there is no special handler for a field type,
just try to unicode the value.
- Fix export of defaultPage and layout. Before, always the defaultPage was set
now layout is always set and defaultPage only, if there is one defined.
- Handle plone.formwidget.geolocation Dexterity field types.
- Check, if wrapper methods for Zope/CMF objects are Zope/CMF only objects by
testing for Archetypes and Dexterity first.
- Add BlobField for get_archetypes_fields.
- Don’t try to convert ints to unicode in get_properties().
- Zope 2.6 support for collective.jsonify.
- Fix setup.py to work with Python 2.2.
- Add error type to tracebacks.
- Fix read of NamedBlobImage, NamedFile and NamedBlobFile in dexterity objects.
- Fix read of field for unicode transcoding in dexterity objects.
- Make archetypes.schemaextender support more generic and handle probably
most use cases.
- Add _directly_provided export field for the object’s directly provided
- Add json_methods module to own Extension folder, which makes it automatically
available and unnecessary to add it to the instance’s Extension folder.
- Don’t skip ComputedField fields, but just export their computed value.
Better skip them in your transmogrifier import pipeline.
- Allow a skip_callback function to be passed to the export_content
function. It evaluates to True, if the current visited item should be
excluded from exporting.
- Export a content’s references as list of UID values.
- Declare the content_type of a field’s value only for TextField and
- Add example buildouts for Plone 2.1, 2.5, 3 and 4.
- Declare base64 encoding for _datafield_FIELDNAME structures. This is used
to correctly decode in transmogrify.dexterity.
- Add export module from collective.blueprint.jsonmigrator and modify to
use collective.jsonify wrapper. Use it in Plone 2.1 by adding it as external
- PEP 8.
- Fixing local roles export.
- Make ATExtensionFields serializable.
- Fixes exporting of Image types that use ATBlob.
- Support p.a.collection QueryField.
- Dexterity support.
- Add Blob fields support. Use specific methods to retrieve
filename, content type and size.
- Add _get_at_field_value to wrappe.Wrapper in order to use accessor method
for Archetypes fields.
- @@jsonify view added. See README_JSONIFY_VIEW.rst for more
- documentation added
- collection of external methods from collective.blueprint.jsonmigrator
- initial release
TODO: Brief introduction on what you do with files - including link to relevant help section.