A Django fitemplate field twith managers to return the rendered or unrendered template.
项目描述
A Django template field with a manager to return the rendered template.
文档
快速入门
安装 django-template-field
pip install django-template-field
然后在项目中使用它
from django.db import models from templatefield import fields, managers class TemplatedText(models.Model): value = fields.TemplateTextField() # Manager that returns rendered templates. This will be the default # manager since it is first. Now, when accessed via `Related Models`_ # this field will also be rendered. objects_rendered = managers.RenderTemplateManager() # Django's default manager returns unrendered templates. objects_unrendered = models.Manager()
可以在 settings 中添加额外的上下文,如下所示
TEMPLATE_FIELD_CONTEXT = { ‘template_var’: value }
也可以将上下文添加到查询集中,如下所示
TemplatedText.objects_rendered.with_context({‘template_var2’: value2})
如果您使用 RenderTemplateManager 作为默认管理器导出固定文件,Django将渲染导出的数据。为了解决这个问题,为您的项目创建一个具有以下设置的备用设置文件
TEMPLATE_FIELD_RENDER = False
然后您可以像这样导出未渲染的数据
./manage.py dumpdata myapp.mymodel –settings=myapp.dump_settings
管理员
将 RenderTemplateManager 作为默认选项会有一个不幸的副作用,即在你的 Django 管理中渲染字段,因此我们提供了一个类,你可以继承这个类来解决该问题。例如:
from templatefield import admin
- class TemplatedTextAdmin(admin.UnrenderedAdmin)
…
运行测试
source <YOURVIRTUALENV>/bin/activate (myenv) $ pip install -r requirements/test.txt (myenv) $ python runtests.py
历史记录
0.3.1 (2016-01-11)
添加设置以禁用渲染
0.3.0 (2016-01-06)
在相关字段访问中启用渲染
0.2.0 (2015-10-23)
将 with_context 添加到 RenderTemplateManager
0.1.0 (2015-10-02)
首次发布在 PyPI。
项目详情
下载文件
下载适用于您平台的应用程序文件。如果您不确定要选择哪一个,请了解更多关于 安装包 的信息。