Django 无法加载静态文件(js,css,image)解决办法

找遍网页十几种方法,最终通过不断配置验证,最终实现Django对静态文件(js,css,image)的加载。

具体总结如下,按照四步走,问题得以解决!!!

一、第一步文件放置

如下图所示:在项目文件夹新建static文件夹;

并新建css、img、js文件夹依次存放对应文件。

二、第二步settings.py配置

# Static files (CSS, JavaScript, Images)
# https://docs.djangoproject.com/en/2.2/howto/static-files/

STATIC_URL = '/static/'

# 把这些文件放到一起是为了用apache等部署的时候更方便
STATIC_ROOT = os.path.join(BASE_DIR, 'sign/static')
 
# 其它 存放静态文件的文件夹,可以用来存放项目中公用的静态文件,里面不能包含 STATIC_ROOT
# 如果不想用 STATICFILES_DIRS 可以不用,都放在 app 里的 static 中也可以
STATICFILES_DIRS = [
    ('css',os.path.join(STATIC_ROOT,'css').replace('\\','/') ),
    ('js',os.path.join(STATIC_ROOT,'js').replace('\\','/') ),
    ('imag',os.path.join(STATIC_ROOT,'imag').replace('\\','/') ),
    ('upload',os.path.join(STATIC_ROOT,'upload').replace('\\','/') ),
]
 
# 这个是默认设置,Django 默认会在 STATICFILES_DIRS中的文件夹 和 各app下的static文件夹中找文件
# 注意有先后顺序,找到了就不再继续找了
STATICFILES_FINDERS = (
    "django.contrib.staticfiles.finders.FileSystemFinder",
    "django.contrib.staticfiles.finders.AppDirectoriesFinder"
)
三、urls.py配置

from django.conf import settings

from django.views.static import serve

urlpatterns = [
    url(r'^static/(?P<path>.*)$',serve,{'document_root': settings.STATIC_ROOT}),

四、html路径配置

对应路径添加

{%static*****************%}

 

PS:参考网页链接如下

1.https://blog.csdn.net/zxyhfdl/article/details/81907021

2.https://blog.csdn.net/dong_W_/article/details/78767573

  • 3
    点赞
  • 15
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Django 中导入静态资源文件,可以按照以下步骤进行操作: 1. 在 Django 项目的根目录下创建一个名为 `static` 的文件夹,用于存放静态文件,例如 CSS、JavaScript、图片等。 2. 在 `settings.py` 文件中,将 `STATIC_URL` 设置为静态文件的 URL 前缀,例如: ```python # settings.py STATIC_URL = '/static/' ``` 3. 在需要使用静态文件的模板或视图中,使用 `{% load static %}` 静态文件标签库,并使用 `static` 模板标签生成静态文件的 URL。 例如,在模板中 CSS 文件: ```html <!-- templates/base.html --> <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title>{% block title %}My Website{% endblock %}</title> <link rel="stylesheet" href="{% static 'css/style.css' %}"> </head> <body> {% block content %} {% endblock %} </body> </html> ``` 在视图中图片文件: ```python # views.py from django.shortcuts import render def my_view(request): context = {'img_url': '/static/images/my-image.jpg'} return render(request, 'my_template.html', context) ``` 在模板中使用 `img` 标签图片: ```html <!-- templates/my_template.html --> {% extends 'base.html' %} {% block content %} <h1>My Page</h1> <img src="{{ img_url }}" alt="My Image"> {% endblock %} ``` 以上是在 Django 中导入静态资源文件的基本步骤。需要注意的是,Django 会在应用程序目录下查找静态文件,例如 `myapp/static/`,如果找不到,会在根目录下的 `static` 文件夹中查找。另外,在生产环境中,建议使用专业的 Web 服务器来处理静态文件,例如 Nginx 或 Apache。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值