Skip to main content

Redturtle Exporter base

https://github.com/RedTurtle/redturtle.exporter.base/workflows/Tests/badge.svg

Tool that exports Plone contents for a major migration.

This should be used with redturtle.importer.base/volto packages.

Features

  • Easily to include in your old site (just add to the buildout)

  • No dependencies to other tools

  • Easily to extend (see below)

Custom exporters

This base product exports standard content-types (also Archetype-based).

If your site has some additional content-types to be exported and need to structure output in a more specific way, you can create a more specific package (for example redturtle.importer.project_name) where you can add specific exporters like this:

<browser:page
  for="my.project.interfaces.IMyCustomType"
  name="get_item"
  class=".jsonify.MyCustomTypeGetItem"
  permission="zope2.ViewManagementScreens"
  />

where GetItem class is:

from redturtle.exporter.base.browser.jsonify import GetItem as BaseGetter
class MyCustomTypeGetItem(GetItem):

    def __call__(self):

        context_dict = super(MyCustomTypeGetItem, self).__call__()
        ... do something with context_dict ...

        return get_json_object(self, context_dict)

Additional data exporter

You can add some additional data to exported json registering an adapter for ICustomDataExporter:

<subscriber factory=".my_data.ExtraDataExporter"
            provides="redturtle.exporter.base.interfaces.ICustomDataExporter"/>

and in python code you need to return a dictionary with needed informations:

@adapter(Interface, Interface)
@implementer(ICustomDataExporter)
class ExtraDataExporter(object):
    order = 4  # set an execution order

    def __init__(self, context, request):
        self.context = context
        self.request = request

    def __call__(self):
        """
        """
        return {'foo': 'bar'}

Export users and groups

There are two additional views that can be called (only Site Managers has access to these views) to export the list of users and groups:

  • /export_users

  • /export_groups

These views returns a json with all the informations.

Installation

Install redturtle.exporter.base by adding it to your buildout:

[buildout]

...

eggs =
    redturtle.exporter.base

and then running bin/buildout

Contribute

Credits

This product has been developed with some help from

kitconcept

License

The project is licensed under the GPLv2.

Contributors

Changelog

1.3.1 (2021-07-19)

  • Fix geolocation exporter. [cekk]

1.3.0 (2021-02-01)

  • Python 3 and Plone52 support. [cekk, daniele]

1.2.3 (2020-11-03)

  • Fix encoding in rich text fields converter. [cekk]

  • Improve Topics exporter. [cekk]

1.2.2 (2020-11-01)

  • Add customizables additional data exporters as adapters. [cekk]

  • Convert internal links in rich text fields from relative paths to resolveuid. [cekk]

1.2.1 (2020-10-09)

  • Fix deletion of keys in vocabulary. [daniele]

1.2.0 (2020-09-22)

  • Also export portlets. [cekk]

1.1.6 (2020-07-28)

  • Fix wrong release. [cekk]

1.1.5 (2020-07-28)

  • Fix dependencies versions for old Plone sites. [cekk]

1.1.4 (2020-06-23)

  • Fix text encoding. [cekk]

1.1.3 (2020-06-23)

  • Fix dates set in example contents. [cekk]

1.1.2 (2020-06-23)

  • Set effective date to example published contents. [cekk]

1.1.1 (2020-04-09)

  • Add more properties to users export. [cekk]

1.1.0 (2020-04-07)

  • Add export users and groups views. [cekk]

1.0.2 (2020-02-18)

  • Several improvements in export contents. [cekk]

1.0.1 (2020-02-07)

  • Add install profile for create example contents for import tests. [cekk]

1.0.0 (2020-02-05)

  • Heavy refactoring to be more DX compatible [eikichi][cekk]

  • Add tests [cekk]

0.1.2 (2019-09-18)

  • Fixed dependency in function call. [daniele]

  • Added option for return object in order

  • Fixed mapping for collection object [eikichi18]

  • using id when title is missing for Link objects [daniele]

0.1.1 (2019-01-16)

  • Removed redturtle.portlets.inspector dependency. [daniele]

0.1.0 (2018-11-23)

  • Added parer extra field info [daniele]

  • Initial release. [cekk]

Metadata

Release files for redturtle.exporter.base 1.3.1

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for redturtle.exporter.base 1.3.1
File Size Uploaded Provenance Actions
redturtle.exporter.base-1.3.1.tar.gz 69.5 kB Without provenance Details for redturtle.exporter.base-1.3.1.tar.gz

Release files / redturtle.exporter.base-1.3.1.tar.gz

Download URL redturtle.exporter.base-1.3.1.tar.gz
Size 69.5 kB
Tags Source
SHA-256 checksum
How to use checksums
7b7fcca914b7ff71d4ae3496ae22c0a24931591254c237e792d363b321e48d56
BLAKE2b-256 checksum
How to use checksums
522d30683362ff3676425d2313f838658141aa129873fc5652377adfc1de4768
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.1.1 pkginfo/1.5.0.1 requests/2.23.0 setuptools/41.2.0 requests-toolbelt/0.9.1 tqdm/4.43.0 CPython/3.7.6

Security for redturtle.exporter.base 1.3.1

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

No provenance found

None of the files in this release were uploaded with provenance metadata.

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page