Django的新手在我的方法中可能完全错误。Django:在inclusion_tag中访问MEDIA_URL?
我有一块复杂的HTML,可以在我的网站的多个部分中重复使用,但会填充不同的数据。我想把它变成我可以放在任何地方的街区。
我就包含标签阅读并这样定义它:
from django import template
register = template.Library()
@register.inclusion_tag('release_widget.html')
def release_widget(releases):
return {'release_list': releases}
然后当我在模板中使用它:
{% load release_widget %}
{% release_widget release_list %}
这工作。我的问题是,在release_widget.html文件中,我无法访问我的MEDIA_URL
变量,该变量定义在哪里查找我的图像资产。我认为这是因为上下文没有被传递?
我看着takes_context=True
参数,但无法弄清楚 - 看起来这不再需要变量,这对我不起作用 - 我需要每次都能够传递不同的字典我包括该块。
有没有更好的方法来做到这一点?我甚至应该使用MEDIA_URL
?我不能只使用绝对路径,因为我的网站结构像site.com/article/something/123,资产位于site.com/assets/,我不想在任何地方都使用../
。
感谢, 马特
谢谢,我猜fet_context的文档混淆了我。这很好。 – 2011-04-30 16:15:26