【问题标题】:Can all Django applications add items to a base template所有 Django 应用程序都可以将项目添加到基本模板吗
【发布时间】:2014-06-16 22:17:47
【问题描述】:

我正在用 Django 编写一个网页,并且我有一个名为“Website”的应用程序。该应用程序定义了整个站点的一些基本视图和总体布局,其中导航栏是其中的一部分。

当我添加负责不同功能的应用程序时,我想让它们添加指向该导航栏的链接。这些链接不仅应该在使用某个应用程序的视图时出现,而且在所有其他应用程序中也应该出现。这里的问题是如何在“网站”应用不知道所有其他应用的情况下进行安排?

【问题讨论】:

    标签: django django-templates django-views


    【解决方案1】:

    一个项目中的所有 Django 应用程序都可以相互感知。例如,如果您有一个名为links 的应用程序,您可以使用links 中的模型和函数来创建新内容,然后在Website 中使用该内容。您将需要导入信息。例如,要在您的 Website 视图中使用来自 links 的链接:

    # Website.views
    from links.models import Link
    
    def myView(request):
        links = Link.objects.all()
        # do something with the links
        context = {'links': links}
        return render(request, 'webpage.html', context)
    

    请原谅我的语法和东西,我没有测试过这个或任何东西。我希望这能解释你的意思。多问多多,我会尽力解答的。

    【讨论】:

      猜你喜欢
      • 2015-06-12
      • 2013-06-13
      • 2016-08-01
      • 1970-01-01
      • 1970-01-01
      • 2013-03-04
      • 2019-03-18
      • 2023-04-03
      • 2016-02-10
      相关资源
      最近更新 更多