{{ form.media.js }}
和{{ form.media.css }}
非常适合在Django模板中轻松添加媒体。
我的问题是,我希望能够访问这些媒体的原始网址(不包含<\script type="text/javascript" src="raw_url"><\/script>
)(使用headjs
包含它们)。
我想实现类似的目标:
<script>
{% for script in form.media.js %}
head.js("{{ script.raw_url }}");
{% endfor %}
</script>
答案 0 :(得分:4)
如果你看一下Media类的源代码,会有一个函数:
def render_js(self):
return [u'<script type="text/javascript" src="%s"></script>' % self.absolute_path(path) for path in self._js]
所以你可以这样做。由于我们不能在模板中使用下划线属性,我们可以像这样在表单类中添加方法并使用它:
from django import forms
class TestForm(forms.Form):
def get_media_js(self):
return [self.media.absolute_path(path) for path in self.media._js]