选择起始页 django-cms

Posted

技术标签:

【中文标题】选择起始页 django-cms【英文标题】:Choose the start page django-cms 【发布时间】:2012-06-01 07:17:23 【问题描述】:

django-cms 总是使用最顶层的页面作为开始/登陆页面。我现在想要一个看起来像 foo-home-barhome 的导航作为登录页面。

一种方法是在 / 添加一个重定向到 /home 的虚拟页面,但这对我来说似乎有点粗糙。有没有更好的解决方案?我不介意更改 cms 本身的代码。

【问题讨论】:

【参考方案1】:

您创建的第一个页面似乎是主页,只需根据需要添加其他根页面并在它们上启用导航。这就是我所做的。

我们的第一个页面是测试页面,然后是一些子页面。在管理页面中,您可以单击并拖动页面以更改子/父顺序。我们将 test 重命名为 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>

并且在导航中只包含 bar 和您想要的其他页面,而不是 foo 或 home。

主页上有一个其他页面没有的图标,表示我猜的根页面。

【讨论】:

【参考方案2】:

最简单的方法是使用 django 的重定向通用视图,而不是创建重定向页面。

在您的*** urls.py 中设置它

url(r'^$', RedirectView.as_view(url='/home/')),

当然,在开头添加 from django.views.generic.base import RedirectView 导入,你应该已经准备好了。

('^$' 只捕获根 url 和 RedirectView 重定向到任何你想要的地方。我有点不确定自己是否使用它,但我看到很多主要网站在你访问他们的网站时进行重定向.. .)

【讨论】:

【参考方案3】:

cms_page 表中tree_id 编号最小的页面是主页。这通常是您创建的第一个页面。如果您想将不同的页面设置为主页,您可以手动更改数据库中的 tree_id 值(但不幸的是,不能使用管理员。)

【讨论】:

以上是关于选择起始页 django-cms的主要内容,如果未能解决你的问题,请参考以下文章

office word2016之:从指定页插入页码,并将该页作为起始页

Word2010怎样从某一页开始设置开始页码

TYPO3 6.2 性能、Typoscript 选择、Typoscript 缓存

Django-CMS 自定义插件未在已发布页面中显示数据

分页符怎么设置

Word 最后一页无法删除-解决办法