将Django模板标记放入静态fi

2024-05-13 19:18:22 发布

您现在位置:Python中文网/ 问答频道 /正文

我想在js静态文件中放置一些模板标记用于配置,它将包含在html文件中。如何预编译文件?有什么办法像鲁比的吗 的js.erb公司文件?在


Tags: 文件标记模板htmljs静态公司erb
2条回答

可以渲染任何内容:

>>> from django.template import Context, Template
>>> t = Template("My name is {{ person.first_name }}.")
>>> d = {"person": {"first_name": "Joe", "last_name": "Johnson"}}
>>> t.render(Context(d))
"My name is Joe."

https://docs.djangoproject.com/en/1.6/ref/templates/api/#rendering-a-context

好吧,没什么能阻止你这么做,也许是这样:

page.html模板:

<script>
    {% include "settings.js" %}
</script>

settings.js模板:

^{pr2}$

如果不需要内联JS代码,而是需要一个单独的文件,可以使用Django Compressor,它可以从内联JavaScript生成压缩的静态文件。文档中的用法示例:

{% load compress %}

{% compress js %}
    <script src="/static/js/one.js"></script>
    <script>obj.value = "value";</script>
{% endcompress %}

相关问题 更多 >