【问题标题】:Unable to keep content in the left sidebar data in django page无法在 django 页面的左侧边栏数据中保留内容
【发布时间】:2017-10-03 15:54:17
【问题描述】:

我正在建立一个基于 django 的网站。在下面找到我的模型:

我在将静态数据保留在左侧边栏中时遇到了问题。每当我单击左侧边栏中的类别列表时,它会转到相应类别页面的详细信息。与此同时,我无法在左侧边栏中看到类别列表数据。我知道问题出在 block text1 在 base.html 和 index.html 中。任何帮助将不胜感激。

【问题讨论】:

    标签: python html django django-templates


    【解决方案1】:

    看起来问题是当您调用 detail.html 时,base.html 无法访问名为 text1 的块。

    您要做的是在 base.html 中定义 text1,以便两个模板都可以访问它。

    编辑:这意味着您也需要在详细视图中提供类别

    def detail(request,projectname_id):
       jobs=Projectname.objects.get(pk=projectname_id)
       project_name=Projectname.objects.order_by('-name')[:5]
       context = {'jobs': jobs, 'categories':project_name}
       return render(request,'buildstatus/detail.html', context)
    

    【讨论】:

    • 当我单击左侧内容中的值时,仍然无法在左侧边栏中看到数据。它只显示一个索引或详细信息,但不显示两者。我需要编辑 detail.html 吗?
    • 编辑细节后,它现在可以工作了。非常感谢。
    • 当然。还有一件事,如果“类别”永远不会改变,您可以将其添加到 request.session 而不是 views.index 中的上下文,并且只需调用一次: request.session.categories=Projectname.objects.order_by('-name') [:5],然后在您的模板中像 {{ request.session.categories }} 一样访问它。
    猜你喜欢
    • 2018-04-17
    • 2020-12-28
    • 1970-01-01
    • 2023-03-14
    • 1970-01-01
    • 2015-10-24
    • 2021-05-29
    • 1970-01-01
    • 2021-09-06
    相关资源
    最近更新 更多