I am using Django 1.4.3 and have several sites built using Django-CMS 2.3.5. I want to upgrade them to Django-CMS 2.4.1, so that I can then start to move to Django 1.5.
When I type ./manage runserver
from a virtualenv with Django-CMS 2.3.5, all works fine. When I move to a virtualenv with Django-CMS 2.4.1, but otherwise the same, none of my pages can be accessed.
In the admin panel, they all have the name None. If I edit one, the screen shows them with the correct name and all the plugins there. If I try to save the page, the info all disappears, including the name and slug and plugins, and I get a message at the top asking me to fix the below errors (of which there are none). I can press "publish draft", but the browser cannot find any page but /
, and this has no plugins on it (and it still has name None in the admin panel).
If I try to add a new plugin, I get an alert saying <django.utils.functional.__proxy__ object at 0x1067a9e90>
.
I am not using the MultilingualURLMiddleware
middleware, and have USE_I18N = False
.
I added 'django.middleware.locale.LocaleMiddleware'
to MIDDLEWARE_CLASSES
anyway (but it doesn't help if I do not).
I typed ./manage.py migrate
, ./manage cms fix-mptt
and for good measure ./manage.py cms delete_orphaned_plugins
as well.
How do I keep my pages when I migrate to the new version of Django-CMS?
thanks
Here are upgrade instruction.
I think your problem is in new style CMS_LANGUAGES.
Try to set:
USE_I18N = True
CMS_LANGUAGES = {
1: [
{
'code': 'en',
'name': gettext('English'),
'public': True,
},
],
'default': {
'fallbacks': ['en',],
'public': False,
}
}
Also run ./manage.py cms check to checking django CMS installation