如何从 Django 模板中获取 MEDIA_URL?

2023-12-12

我对 Django 如何处理静态内容有点困惑。本质上,在settings.py文件,我们定义MEDIA_URL指向解析静态媒体(例如脚本和样式)时使用的 URL,以及MEDIA_ROOT,对文件系统上事物所在位置的引用。

但是,我似乎不清楚如何访问MEDIA_URL从模板中,它是有点重要如果我想使用 Django 的机制来加载静态内容。本质上,我的基本模板看起来有点像这样:

<html>
   <head>
       {% block styles %}
       <link rel="stylesheet" href="{{ MEDIA_URL }}styles/master.css"/>
       {% endblock %}
       <title>{% block title %}Page Title{% endblock %}</title>
   </head>
   <body>
      {% block scripts %}
      <script type="text/javascript" src="{{ MEDIA_URL }}scripts/jquery.js"></script>
      {% endblock %}
   </body>
</html>

上面的代码真的能工作吗?我听说你必须使用其他插件才能启动并运行这样的东西,这看起来有点奇怪,因为大概是定义背后的全部意义MEDIA_URL就是在模板中使用它。


访问STATIC_URL在您的模板中,确保django.core.context_processors.static is in TEMPLATE_CONTEXT_PROCESSORS,并且您正在使用RequestContext。更多细节here.

另外,静态文件应该放在下面STATIC_URL, not MEDIA_URL,除非是用户上传的内容。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何从 Django 模板中获取 MEDIA_URL? 的相关文章

随机推荐