2013-05-16 83 views
4

我使用Django 1.4.3,並使用Django-CMS 2.3.5構建了多個站點。我想將它們升級到Django-CMS 2.4.1,以便我可以開始轉向Django 1.5。從2.3.5升級到2.4.1後,Django-CMS頁面全部空白。

當我從Django-CMS 2.3.5的virtualenv中輸入./manage runserver時,所有工作正常。當我轉向使用Django-CMS 2.4.1的virtualenv時,除此之外,我的頁面都無法訪問。

在管理面板中,它們都有名稱None。如果我編輯一個,屏幕將顯示正確的名稱和所有插件。如果我嘗試保存頁面,信息全部消失,包括名稱和slug和插件,並且我在頂部收到一條消息,要求我解決以下錯誤(其中沒有錯誤)。我可以按「發佈草稿」,但瀏覽器找不到任何頁面,但/,這沒有插件(它仍然在管理面板中名稱無)。

如果我嘗試添加一個新的插件,我會收到一個提醒<django.utils.functional.__proxy__ object at 0x1067a9e90>。我不使用MultilingualURLMiddleware中間件,並有USE_I18N = False

無論如何我都加了'django.middleware.locale.LocaleMiddleware'MIDDLEWARE_CLASSES(但是如果我不這樣做,它沒有幫助)。

我輸入了./manage.py migrate,./manage cms fix-mptt並且好的測量值也是./manage.py cms delete_orphaned_plugins

當我遷移到新版本的Django-CMS時,如何保留我的頁面?

謝謝

回答

2

這裏是upgrade instruction

我認爲你的問題是在新的風格CMS_LANGUAGES。

嘗試設置:

USE_I18N = True  
CMS_LANGUAGES = { 
    1: [ 
     { 
      'code': 'en', 
      'name': gettext('English'), 
      'public': True, 
      }, 
     ], 
    'default': { 
     'fallbacks': ['en',], 
     'public': False, 
     } 
} 

而且運行./manage.py CMS檢查來檢查Django的CMS安裝

+0

已修復它! (一旦我進入並重新發布每一頁)。我認爲我可以通過保持USE_I18N = False來簡化說明,但似乎沒有。我的網站現在在URL中有en /,之前沒有,但這不是一個大問題,我認爲有一種方法可以解決這個問題。非常感謝!! –

+0

嘗試改爲將LANGUAGE_CODE設置爲「en」而不是「en-us」 – digi604

0

我曾經在Django學到的最重要的事情是考慮曼努埃爾備份在由manage.py完成的任何遷移過程之前的project.db