Skip to main content

A django CMS 3 to 4 migration package

Project description

django CMS 4 Migration

When do I need this package?

This package is designed to migrate a django CMS 3.5+ project to django CMS 4.0.

What does this package do?

  • Keeps any draft and published content, ensuring that any new draft changes are kept as a new draft version in djangocms_versioning.

Limitations

Due to the nature of the changes between django CMS 3.5+ and 4.0 the package will fail to function if an incompatible package is installed.

This may require you to:

  • Fork or copy and modify this package to work with any bespoke requirements your project has (we may accept these changes back for popular packages as a configurable option)
  • Ensure that all installed packages for your project are

Prerequisites

Require knowledge of the changes and new features in 4.0:

  • New cms app configuration
  • Revised Page, Title (Now named PageContent) and Placeholder relationships

Requires knowledge of django CMS Versioning

  • Grouper and content model terms
  • Understanding how versioning selects published content

Install the following packages

The following packages are not yet officially released, they need to be installed directly from the repository. We need your help to make packages v4.0 compatible and to provide documentation for the wider community!

django CMS 4.0

pip install http://github.com/divio/django-cms/tarball/release/4.0.x#egg=django-cms

djangocms-text-ckeditor

pip install https://github.com/divio/djangocms-text-ckeditor/tarball/support/4.0.x#egg=djangocms-text-ckeditor

djangocms-versioning

pip install https://github.com/divio/djangocms-versioning/tarball/master#egg=djangocms-versioning

djangocms-alias

pip install https://github.com/divio/djangocms-alias/tarball/master#egg=djangocms-alias

Installation

Warning: This package can leave your DB in a corrupted state if used incorrectly, be sure to backup any databases prior to running any commands listed here!

First install this package in your project

pip install djangocms-4-migration

Running

Simply run the following command to run the data migration. Note: This command calls the django migrate command, this is because it has to run commands that save information that would have been lost by running the cms migrations directly.

python manage.py cms4_migration

Common solutions for django CMS 4.0 compatibility

Import PageContent in a backwards compatible way (Title).

# django CMS v4
try:
    from cms.models import PageContent
# django CMS 3.x
except ImportError:
    from cms.models import Title as PageContent

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

djangocms-4-migration-0.0.1.tar.gz (13.0 kB view details)

Uploaded Source

Built Distribution

djangocms_4_migration-0.0.1-py3-none-any.whl (18.4 kB view details)

Uploaded Python 3

File details

Details for the file djangocms-4-migration-0.0.1.tar.gz.

File metadata

  • Download URL: djangocms-4-migration-0.0.1.tar.gz
  • Upload date:
  • Size: 13.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.3.0 pkginfo/1.6.1 requests/2.25.1 setuptools/51.1.2 requests-toolbelt/0.9.1 tqdm/4.56.0 CPython/3.6.12

File hashes

Hashes for djangocms-4-migration-0.0.1.tar.gz
Algorithm Hash digest
SHA256 fbee83d4329acf15cf5f702c914afd43fad8d6a524f9192cf3803d1de306e58b
MD5 d7c9ac85999f281198258ca3f3b0e116
BLAKE2b-256 c92d7a7e02969db6d11ebe840752404c0f9574de90d0f5bddd82c3b1443a2a39

See more details on using hashes here.

File details

Details for the file djangocms_4_migration-0.0.1-py3-none-any.whl.

File metadata

  • Download URL: djangocms_4_migration-0.0.1-py3-none-any.whl
  • Upload date:
  • Size: 18.4 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.3.0 pkginfo/1.6.1 requests/2.25.1 setuptools/51.1.2 requests-toolbelt/0.9.1 tqdm/4.56.0 CPython/3.6.12

File hashes

Hashes for djangocms_4_migration-0.0.1-py3-none-any.whl
Algorithm Hash digest
SHA256 e9562eba7131d15f8298404a0070bc82cb1379fc424946b3ab33f2f9f0cf6306
MD5 05aac0670295f37127da95a15a0237bf
BLAKE2b-256 10622897ad910a472de15ddb0282361a55aa14e78f3570709416804b342050fb

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page