跳转到主要内容

A Django fitemplate field twith managers to return the rendered or unrendered template.

项目描述

https://badge.fury.io/py/django-template-field.png https://travis-ci.org/orcasgit/django-template-field.png?branch=master

A Django template field with a manager to return the rendered template.

文档

完整文档位于 https://django-template-field.readthedocs.org

快速入门

安装 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。

项目详情


下载文件

下载适用于您平台的应用程序文件。如果您不确定要选择哪一个,请了解更多关于 安装包 的信息。

源分布

django-template-field-0.3.1.tar.gz (7.6 kB 查看哈希值)

上传时间

支持