Django cms,模板中的子变量,页面导航不';在新版本中不显示
我正在尝试使用DjangoCMS3.6.0运行项目。它是使用Django cms 2.3.8创建的,我正在尝试使用旧代码。在这个新版本中,不显示带有子页面链接的菜单<代码>子项模板中的变量似乎不包含任何内容。Django cms,模板中的子变量,页面导航不';在新版本中不显示,django,django-templates,django-cms,Django,Django Templates,Django Cms,我正在尝试使用DjangoCMS3.6.0运行项目。它是使用Django cms 2.3.8创建的,我正在尝试使用旧代码。在这个新版本中,不显示带有子页面链接的菜单子项模板中的变量似乎不包含任何内容。 我希望它能显示一个页面的4个子页面的链接。我已经在新版本的django cms的管理界面中手动添加了页面。 subbase.html: {% extends "base.html" %} {% load i18n %} {% load menu_tags cms_tags %} ... {% bl
我希望它能显示一个页面的4个子页面的链接。我已经在新版本的django cms的管理界面中手动添加了页面。
subbase.html
:
{% extends "base.html" %}
{% load i18n %}
{% load menu_tags cms_tags %}
...
{% block left_menu %}
<nav id="lMenu">
{% show_menu 1 1 0 1 "menu/sub_menu.html" %}
{% block left_content %}{% endblock left_content %}
</nav>
{% endblock left_menu %}
{% load menu_tags %}
<ul class="subMenu">
{% for child in children %}
<li><a href="{{ child.attr.redirect_url|default:child.get_absolute_url }}" title="{{ child.get_menu_title }}">{{ child.get_menu_title }}</a></li>
{% endfor %}
</ul>
我已使用manage.py shell
在数据库中检查这些页面是否有子页面:
来自cms.models.pagemodel导入页面
pages=Page.object.all()
children=页面[2]。获取子代页面()
现在,例如,调用页面[2]。获取菜单标题(),子项[0]。获取菜单标题()
返回通过UI添加的页面的预期专有名称
我在文档中没有找到太多关于这个children变量的信息。这在3.6中是否仍然可以这样工作?在模板中引用子页面的正确方法是什么?我发现语言设置有问题。带有子页面链接的菜单在I:
- 在主项目URL.py文件中使用了i18n_模式
- 根据文档在settings.py中添加了CMS_语言
- 通过cms管理页面添加了两种语言的页面。以前我只有一种语言的页面李>
也可能是URL处理有问题,我使用了来自URL.py的django应用程序URL,而不是cms.URL。你是如何构建树的?如果删除这些参数,是否会显示子对象?
children
上下文变量是正确的;是的,这对应于我的树。我发现语言设置有问题。