mezzanine-sync-pages let you synchronize the contents of pages in Mezzanine. This comes in handy if you want to manage your page contents as plain text/HTML files rather than in a web editor and if you want to manage your content in a version control system like Git.
It does synchronize only the page contents and not any metadata (like title, slug, publish date, ...).
To create an initial dump of all existing pages in Mezzanine you can
use the management command dump_pages
.
To write back the previously dumped (and maybe modified) contents, use
the sync_pages
management command or the corresponding action in the
admin interface.
- Dump contents of all pages in Mezzanine as files
- Write back page contents to Mezzanine
- Detect unmodified content and skip those pages
- Display a diff on modified content after updating
The easiest method is to install directly from pypi using pip:
pip install mezzanine-sync-pages
If you prefer, you can download mezzanine-sync-pages from https://github.com/eht16/mezzanine-sync-pages and install it directly from source:
python setup.py install
The source code is available at https://github.com/eht16/mezzanine-sync-pages/.
-
Add
mezzanine_sync_pages
toINSTALLED_APPS
-
Set
MEZZANINE_SYNC_PAGES_DESTINATION_PATH
in your settings.py to the path where the content files can be found
After activating the app, two new management commands are added:
-
dump_pages
: create an initial dump of all pages in Mezzanine and write the corresponding files inMEZZANINE_SYNC_PAGES_DESTINATION_PATH
-
sync_pages
: read all files fromMEZZANINE_SYNC_PAGES_DESTINATION_PATH
and write their content to Mezzanine
Additionally, a new action in the Mezzanine admin interface is added to trigger the synchronization of the pages to Mezzanine.
- Add trailing new line only if content is not empty (fixes crashing on empty pages when dumping)
- Initial release
mezzanine-sync-pages is licensed under the MIT license.
Enrico Tröger enrico.troeger@uvena.de