首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >我怎样才能在我的django应用程序中显示一个收藏图标?

我怎样才能在我的django应用程序中显示一个收藏图标?
EN

Stack Overflow用户
提问于 2014-02-21 23:09:56
回答 10查看 132K关注 0票数 179

我只想将favicon.ico放到我的staticfiles目录中,然后让它显示在我的应用程序中。

我如何才能做到这一点呢?

我已经将favicon.ico文件放在我的staticfiles目录中,但是它没有出现,我在我的日志中看到了以下内容:

代码语言:javascript
复制
127.0.0.1 - - [21/Feb/2014 10:10:53] "GET /favicon.ico HTTP/1.1" 404 -

如果我去http://localhost:8000/static/favicon.ico,我可以看到这个图标。

EN

回答 10

Stack Overflow用户

发布于 2014-02-21 23:13:13

如果您有一个到处都包含的基础或标题模板,为什么不在基本的HTML中包含这个图标呢?

代码语言:javascript
复制
<link rel="shortcut icon" type="image/png" href="{% static 'favicon.ico' %}"/>
票数 205
EN

Stack Overflow用户

发布于 2014-02-21 23:21:46

一个轻量级的技巧是在urls.py文件中进行重定向,例如添加一个视图,如下所示:

代码语言:javascript
复制
from django.views.generic.base import RedirectView

favicon_view = RedirectView.as_view(url='/static/favicon.ico', permanent=True)

urlpatterns = [
    ...
    re_path(r'^favicon\.ico$', favicon_view),
    ...
]

这是一个简单的技巧,当你没有其他静态内容可供托管时,它可以很好地让图标正常工作。

票数 139
EN

Stack Overflow用户

发布于 2019-07-15 23:10:30

在您的settings.py中,添加一个静态文件根目录:

代码语言:javascript
复制
   STATICFILES_DIRS = [
        os.path.join(BASE_DIR, 'static')
        ]

创建/static/images/favicon.ico

将图标添加到您的模板(base.html):

代码语言:javascript
复制
{% load static %}
<link rel="shortcut icon" type="image/png" href="{% static 'images/favicon.ico' %}"/>

并在urls.py中创建url重定向,因为浏览器会在/favicon.ico中查找收藏图标

代码语言:javascript
复制
from django.contrib.staticfiles.storage import staticfiles_storage
from django.views.generic.base import RedirectView

urlpatterns = [
    ...
    path('favicon.ico', RedirectView.as_view(url=staticfiles_storage.url('images/favicon.ico')))
]
票数 29
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/21938028

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档