Django Admin Svg Images Aren不在开发模式下加载

时间:2015-12-31 06:17:58

标签: django svg

我正在运行Django 1.9并且我在管理员上缺少几个图标,例如搜索框的放大镜,DateTimeFields的日历和时钟。在检查元素时,我看到了:

<img src="/static/admin/img/search.svg" alt="Search">

我检查了文件位置,我的svg文件就在那里。我只有静态网址设置。

STATIC_URL = '/static/'

2 个答案:

答案 0 :(得分:0)

在开发/调试模式下,您可能需要添加媒体URL。

在您的网址中添加static(settings.MEDIA_URL, document_root=settings.MEDIA_ROOT),请参阅:

https://docs.djangoproject.com/en/2.1/howto/static-files/#serving-files-uploaded-by-a-user-during-development

答案 1 :(得分:0)

执行此操作后,请竖起大拇指(不要使用 IMG TAG,之后使用 css 很糟糕)。

有史以来最简单、最正确的方法:

1 - 下载 svg 文件(将它们放入 svg 文件夹)和 sprite 文件,如下所示(注意“sprite.svg”不在 svg 文件夹中,而是在 img 文件夹中,请注意:

enter image description here

2 - 在您的模板文件中:

{% load static %}

<svg class="search__logo">
      <use xlink:href="{% static 'shop/img/sprite.svg' %} #icon-magnifying-glass"></use>
</svg>

#icon-magnifying-glass 是我在 sprite.svg 文件中选择的 svg 的“id”。

我测试了数千个库,但这是一种自然的方式,您可以使用 svg,而无需重新发明轮子。

寿命长!