2017-04-27 61 views
1

我有一個網站w installation安裝。該網站有一個主頁,表面上的所有工作都很好,但我以某種方式搞亂了樹結構。網站主頁不是根的子女

根頁面顯示沒有子頁面。如果我嘗試在根目錄下創建一個網頁,我得到

ValidationError at /cms/pages/add/website/indexpage/1/ 
{'path': ['Page with this Path already exists.']} 

如果我試圖「移動」的主頁是根我沒有得到任何錯誤,但主頁上仍然沒有出現在孩子根孩子的名單

如果我試圖「移動」不同的頁面是根我得到以下錯誤的子

IntegrityError at /cms/pages/115/move/1/confirm/ 
duplicate key value violates unique constraint "wagtailcore_page_path_key" 
DETAIL: Key (path)=(00010001) already exists. 

試圖從dumpdata給予loaddata到一個新的數據庫我以下錯誤

django.db.utils.IntegrityError: Problem installing fixtures: insert or update on table "website_highlightspage" violates foreign key constraint "website_highlightspage_page_id_0f12432c_fk_wagtailcore_page_id" 
DETAIL: Key (page_id)=(55) is not present in table "wagtailcore_page". 

它看起來像我永久性的孤兒我的主頁,雖然我不完全確定我是如何做到這一點的。

我想知道是否有反正來修復這個問題,或導出當前頁到一個新的實例之前,這個問題就變得至關重要

回答

3

嘗試運行./manage.py fixtree - 它可以修復某些類型的樹腐敗(並對其無法自動修復的問題給出更多的診斷)。我建議首先備份數據庫,作爲預防措施。

+1

是的。這是正確的修復。根頁面的num_child列錯誤地設置爲0,這導致了樹結構問題。用sql手動更新它也解決了這個問題。 loaddata命令的問題是一個單獨的問題。 – brianf

相關問題