django-cms總是使用最頂層頁面作爲開始/着陸頁面。我現在想有一個像這樣的導航foo-home-bar和首頁成爲登陸頁面。選擇起始頁面django-cms
一種方法是在/重定向到/ home時添加一個虛擬頁面,但這對我來說似乎有點粗糙。有沒有更好的解決方案?我不介意改變cms本身的代碼。
django-cms總是使用最頂層頁面作爲開始/着陸頁面。我現在想有一個像這樣的導航foo-home-bar和首頁成爲登陸頁面。選擇起始頁面django-cms
一種方法是在/重定向到/ home時添加一個虛擬頁面,但這對我來說似乎有點粗糙。有沒有更好的解決方案?我不介意改變cms本身的代碼。
最簡單的方法,而不是創建一個重定向的頁面就是使用django的重定向通用視圖。
一套它在你的頂級urls.py
url(r'^$', RedirectView.as_view(url='/home/')),
當然,在開始處添加from django.views.generic.base import RedirectView
進口,你應該準備就緒。
('^$'
只會捕獲根網址和RedirectView重定向到任何地方,我自己有點不確定,但我看到很多主要網站在進入他們的網站時做重定向... )
您所做的第一頁似乎是主頁,只需根據需要添加其他根頁面並啓用導航。這就是我所做的。
我們的第一頁是測試,然後是一些子頁面。在管理頁面中,您可以單擊並拖動頁面以更改子/父訂單。我們將測試重命名爲home,並將子頁面移動到另一個根頁面。
您也可以通過在menu/menu.html中創建一個模板覆蓋默認菜單 在那裏您可以通過在某些if語句中添加命令來覆蓋順序。 你也可以硬編碼在具有菜單像你base.html文件: <ul id=menu> <li><a href="/foo/>foo></a></li> <li><a href="/">Home</a></li> {% show_menu %} <ul>
,只是有酒吧,您在導航想,但不是foo或家庭其他網頁。
該主頁上有一個圖標,其他頁面不會顯示,表示我猜的根頁面。
cms_page表中編號最小的tree_id的頁面是主頁。這通常是您創建的第一頁。如果您想在主頁上創建不同的頁面,則可以手動更改數據庫中的tree_id值(但不幸的是不能使用管理員)。