如何使用Djja的django-widget-tweaks render_field?

时间:2017-09-19 08:06:15

标签: django-templates jinja2 django-widget-tweaks

我已成功使用django-widget-tweaks add_class作为Jinja过滤器。 我将该函数放入Jinja环境过滤器中,如下所示。

def environment(**options):
    env = Environment(**options)
    env.globals.update({
        'static': staticfiles_storage.url,
        'url': reverse,
        'render_field': widget_tweaks.render_field,
    })
    env.filters.update({
        'add_class': widget_tweaks.add_class,
        'set_attr': widget_tweaks.set_attr,
    })
    return env

现在我有新的要求添加模型类型为DateField的输入字段表单的属性“value”,我需要通过上下文变量将当前日期的值传递给Jinja模板。

我试图找到如何将变量传递给属性,很多SO文章都提到了使用render_field [1]。

我不能将render_field用作Jinjaa全局函数(如上面的代码片段)。 我需要类似的代码:

{{ render_field(form.user_date, value={{ today }}) }}

有没有人使用render_field作为Jinja函数?

我发现有人使用render_field作为Jinja全局函数[2],但是它没有使用现有的render_field,它们创建了新的函数。 但是我仍然没有成功使用这个功能。

感谢任何帮助。

[1] https://github.com/jazzband/django-widget-tweaks

[2] https://github.com/niwinz/django-jinja/blob/e38fef68ce363d49727429c7b34ea44f45553f5d/django_jinja/contrib/_widget_tweaks/templatetags/_render_field.py

0 个答案:

没有答案