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

我怎样才能做到呢?

我已经把favicon.ico文件放在我的staticfiles目录中,但它没有显示,我在日志中看到了这一点:

127.0.0.1 - - [21/Feb/2014 10:10:53] "GET /favicon.ico HTTP/1.1" 404 -

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


当前回答

最佳实践:

与你所想的相反,favicon可以是任何大小和任何图像类型。点击这个链接了解详情。

不给你的图标添加链接会降低页面加载速度。

在django项目中,假设你的favicon的路径是:

myapp/static/icons/favicon.png

在你的django模板中(最好是在基本模板中),添加这一行到页面的头部:

<link rel="shortcut icon" href="{%  static 'icons/favicon.png' %}">

注意:

我们假设,静态设置在settings.py中配置得很好。

其他回答

有时重新启动服务器会有所帮助。

停止服务器,然后重新运行命令:python manage.py runserver 现在应该加载CSS文件了。

复制你的图标: / yourappname mainapp(例:核心)/静态/ mainapp(例:核心)/ img

然后转到mainapp模板(例如:base.html) 复制这个,在{% load static %}后面,因为你必须先加载静态。

<link href="{% static 'core/img/favi_x.png' %}" rel="shortcut icon" type="image/png" />

在模板文件中

{% load static %}

然后在<head>标签内

<link rel="shortcut icon" href="{%  static 'favicon.ico' %}">

这假设您已经在settings.py中适当配置了静态文件。


注意:旧版本的Django使用load staticfiles,而不是load static。

现在(2020年), 你可以在html文件中添加一个基本标签。

<head>
<base href="https://www.example.com/static/"> 
</head>

最佳实践:

与你所想的相反,favicon可以是任何大小和任何图像类型。点击这个链接了解详情。

不给你的图标添加链接会降低页面加载速度。

在django项目中,假设你的favicon的路径是:

myapp/static/icons/favicon.png

在你的django模板中(最好是在基本模板中),添加这一行到页面的头部:

<link rel="shortcut icon" href="{%  static 'icons/favicon.png' %}">

注意:

我们假设,静态设置在settings.py中配置得很好。