使用http(带有esi或hinclude)或直接呈现,将django视图包含为其他django视图的子部分。

django_includes的Python项目详细描述


实验软件。没有测试,没有文档,使用它是你自己的风险(或者没有)。

目前只对django 2和python 3.5+进行测试,这将是唯一受支持的目标。

安装

  • 在已安装的应用程序中添加“django_includes”。
  • 将DjangoIncludesExtension添加到Jinja2环境。
fromdjango_includes.jinja2importDjangoIncludesExtensiondefenvironment(**options):env=Environment(**options)# your logic hereenv.add_extension(DjangoIncludesExtension)returnenv
  • 在模板中使用{{render_sync(请求,'mused.views.musicGroupListView',musicgenre=object)}

现在,这只是“同步渲染”

安装hinclude

如果您想使用hinclude(一个异步加载页面某些部分的简单javascript):

将hinclude url添加到项目:

fromdjango_includes.viewsimportinclude_viewurlpatterns+=[path('hinclude/<token>',include_view,kwargs={'via':'hinclude'},name='hinclude')]

将hinclude添加到布局中

<htmllang="en"xmlns:hx="http://purl.org/NET/hinclude"><head><scriptsrc="{{ static('hinclude.js') }}"></script>
  • 在模板中使用{{render hinclude(请求,'mused.views.musicGroupListView',musicgenre=object)}

注意,这将使用json web令牌对参数进行编码,使用django机密作为加密的“种子”。

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
具有作为接口的属性的java Hibernate实体类   在Java中检查int l,r的条件l+1<r的最快方法   java如何更新TornadFX ComboBox Kotlin   java Tomcat未调用控制器api   java在Android Studio中的alertdialog中打开新活动   xml VScode Java/Maven环境问题不同的计算机   java我需要修改循环中的一个文本字符串,这样程序就可以复制粘贴相同的字符串,但数字会增加   java如何从Twilio响应消息中获取内容   从Java5+diamond运算符开始初始化泛型集合的java方法   在java中循环,直到用户按下enter键   java如何找到组件属于哪个面板?   java我想计算一个代码需要的总迭代次数   <data 安卓:type=“*/*”/>不允许使用java字符串类型   解析我有一个带有开始日期和目标日期的字符串,我想在Java中获取日期并保存在变量中   在mongodb中使用ReflectionDBObject类插入java对象?