如何在Django中做一个可重用的插件,该插件可以包含在模板中?

时间:2018-11-11 10:41:14

标签: django django-templates django-views django-apps

如何在Django中做一个可重用的插件,该插件可以简单地包含在模板中?

我阅读了一些教程。它们都描述了返回HttpResponse并扩展基本模板的视图。这对于主视图很有用。但是,如何设置一个简单的插入视图,使其位于其他应用程序的侧边栏中?

我将此要求命名为:

  1. 它不能返回HttpResponse,因为这是由主视图完成的。
  2. 它应该能够显示模型。
  3. 容易包含。
  4. 它应该开箱即用,而无需先复制和调整插件的模板。

问题:

  1. 界面外观如何,项目如何使用此界面?
  2. 该技术如何称呼?
  3. 如何在PyPi上调用这种类型的软件包?
  4. 您能命名一个显示规范实现的示例程序包吗?

我想有很多答案,但是很难找到答案,因为我的搜索关键字不够具体。因此,请提出这个问题,这对经验丰富的Django开发人员来说可能是不言而喻的。

1 个答案:

答案 0 :(得分:2)

如果您不想在基本模板或任何其他视图中进行任何更改,则最好使用Django Middleware。您可以处理发送到浏览器的HTML字符串,并在其中添加“侧边栏” HTML / CSS / JS。

这样,您只需将中间件添加到项目的MIDDLEWARE文件的settings.py列表中即可激活边栏。