静态文件未加载

时间:2020-06-01 20:07:39

标签: django python-3.x

“ mySite”主目录中的

urlpatterns = [
    path('admin/', admin.site.urls),
    path('coming-soon/', include('comingSoon.urls')),
]

comingSoon应用程序目录中的网址

urlpatterns = [
    path("", views.index, name="coming-Soon")
]

comingSoon应用程序内的views.index

def index(request):
return render(request, 'comingSoon/coming-soon.html')

内部模板“ coming-soon.html”

<!DOCTYPE html>
<html lang="en">
<head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <meta name="description" content="" />
    <meta name="keywords" content="" />
    <title>My Website</title>
    <link rel="icon" href="images/fav.png" type="image/png" sizes="16x16"> 
    {% load static %}
    {% load staticfiles %}
<link rel="stylesheet" href="{% static 'css/main.min.css' %}">
<link rel="stylesheet" href="{% static 'css/style.css' %}">
<link rel="stylesheet" href="{% static 'css/color.css' %}">
<link rel="stylesheet" href="{% static 'css/responsive.css' %}">

</head>
<body>
<div class="theme-layout">

    <div class="gap2 mate-black medium-opacity vh100">
        <div class="bg-image" style="background-image:url(images/resources/coming-soon-bg.jpg);"></div>
        <div class="container">
            <div class="row">
                <div class="col-lg-12">
                    <div class="coming-head">
                        <div class="logo">
                            <a href="index.html" title=""><img src="images/logo.png" alt=""></a>
                        </div>
                        <ul class="social-circle ">
                            <li><a class="facebook-color" href="#" title=""><i class="fa fa-facebook"></i></a></li>
                            <li><a class="twitter-color" href="#" title=""><i class="fa fa-twitter"></i></a></li>
                            <li><a class="google-color" href="#" title=""><i class="fa fa-google-plus"></i></a></li>
                            <li><a class="vk-color" href="#" title=""><i class="fa fa-vk"></i></a></li>
                        </ul>
                    </div>
                    <div class="coming-meta">
                        <h1>We're Coming!</h1>
                        <p>We are working hard to bring you new experience</p>
                        <ul class="countdown">
                           <li><span class="days">00</span><p class="days_ref"></p></li>
                           <li> <span class="hours">00</span><p class="hours_ref"></p></li>
                           <li> <span class="minutes">00</span><p class="minutes_ref"></p></li>
                           <li> <span class="seconds">00</span><p class="seconds_ref"></p></li>
                        </ul>
                        <form method="post">
                            <input type="text" placeholder="Submit inquiry...">
                            <button type="submit"><i class="fa fa-arrow-right"></i></button>
                        </form>
                    </div>
                </div>
            </div>
        </div>
    </div>

</div>

    <script src="{% static 'js/main.min.js' %}"></script>
    <script src="{% static 'js/downCount.js' %}"></script>
    <script src="{% static 'js/script.js' %}"></script>


</body> 
</html>

此时,如果我尝试运行,则使用html加载,但无法加载css和js

文件夹结构-1

mySite.com
|-- mySite                   // django project directory                
|   |-- mySite               // app directory
|   |   |-- __init__.py
|   |   |-- wsgi.py
|   |   |-- urls.py
|   |   |-- asgi.py
|   |   |-- setting.py
|   |
|   |-- comingSoon          // comingsoon  app
|   |   |-- migrations
|   |   |-- __init__.py
|   |   |-- admin.py
|   |   |-- apps.py
|   |   |-- models.py
|   |   |-- tests.py
|   |   |-- urls.py
|   |   |-- views.py
|   |
|   |-- static         // static files intentionally placing outside app directory (***but not loading***)
|   |   |-- css
|   |   |-- js
|   |   |-- images
|   |   |-- fonts
|   |   
|   |-- templates                // templates folder for base templates.
|   |   |-- base1.html
|   |   |-- base2.html
|   |   |-- comingSoon           // comingSoon directory
|   |   |   |-- coming-soon.html // html file - this is loading   

我做了一些修改,就像我添加了一个名为“ audio”的应用程序并在其中创建了一个静态文件夹,现在如果我访问我的静态文件夹,它的工作正常。但是我想通过保留静态文件来进行访问,就像在“文件夹结构-1

”中一样
mySite.com
    |-- mySite                   // django project directory                
    |   |-- mySite               // app directory
    |   |   |-- __init__.py
    |   |   |-- wsgi.py
    |   |   |-- urls.py
    |   |   |-- asgi.py
    |   |   |-- setting.py
    |   |
    |   |-- audio          // Audio app
    |   |   |-- migrations
    |   |   |-- static
    |   |   |   |-- audio
    |   |   |       |-- css
    |   |   |       |-- js
    |   |   |-- __init__.py
    |   |   |-- admin.py
    |   |   |-- apps.py
    |   |   |-- models.py
    |   |   |-- tests.py
    |   |   |-- urls.py
    |   |   |-- views.py
    |   |   
    |   |-- comingSoon          // comingsoon  app
    |   |   |-- migrations
    |   |   |-- __init__.py
    |   |   |-- admin.py
    |   |   |-- apps.py
    |   |   |-- models.py
    |   |   |-- tests.py
    |   |   |-- urls.py
    |   |   |-- views.py
    |   |
    |   |-- static         // static files intentionally placing outside app directory (***but not loading***)
    |   |   |-- css
    |   |   |-- js
    |   |   |-- images
    |   |   |-- fonts
    |   |   
    |   |-- templates                // templates folder for base templates.
    |   |   |-- base1.html
    |   |   |-- base2.html
    |   |   |-- comingSoon           // comingSoon directory
    |   |   |   |-- coming-soon.html // html file - this is loading 

settings.py的静态-更新了

BASE_DIR = os.path.dirname(os.path.dirname(os.path.abspath(__file__)))
STATIC_URL = '/static/'
STATICFILES_DIRS = [os.path.join(BASE_DIR, 'static')]

几次尝试后都找不到实际错误

我得到的错误如下

[02/Jun/2020 02:28:05] "GET /coming-soon/ HTTP/1.1" 200 2555
[02/Jun/2020 02:28:05] "GET /static/css/main.min.css HTTP/1.1" 404 1672
[02/Jun/2020 02:28:05] "GET /static/css/color.css HTTP/1.1" 404 1663
[02/Jun/2020 02:28:05] "GET /static/css/responsive.css HTTP/1.1" 404 1678
[02/Jun/2020 02:28:05] "GET /static/css/style.css HTTP/1.1" 404 1663
[02/Jun/2020 02:28:05] "GET /static/js/downCount.js HTTP/1.1" 404 1669
[02/Jun/2020 02:28:05] "GET /static/main.min.js HTTP/1.1" 404 1657
Not Found: /coming-soon/images/logo.png
[02/Jun/2020 02:28:05] "GET /coming-soon/images/logo.png HTTP/1.1" 404 3713
[02/Jun/2020 02:28:05] "GET /static/js/script.js HTTP/1.1" 404 1660
Not Found: /coming-soon/images/resources/coming-soon-bg.jpg
[02/Jun/2020 02:28:05] "GET /coming-soon/images/resources/coming-soon-bg.jpg HTTP/1.1" 404 3773
[02/Jun/2020 02:28:05] "GET /static/js/downCount.js HTTP/1.1" 404 1669
[02/Jun/2020 02:28:05] "GET /static/js/script.js HTTP/1.1" 404 1660
[02/Jun/2020 02:28:06] "GET /coming-soon/ HTTP/1.1" 200 2555
[02/Jun/2020 02:28:06] "GET /static/css/main.min.css HTTP/1.1" 404 1672
[02/Jun/2020 02:28:06] "GET /static/main.min.js HTTP/1.1" 404 1657
[02/Jun/2020 02:28:06] "GET /static/css/style.css HTTP/1.1" 404 1663
[02/Jun/2020 02:28:06] "GET /static/js/downCount.js HTTP/1.1" 404 1669
[02/Jun/2020 02:28:06] "GET /static/css/responsive.css HTTP/1.1" 404 1678
[02/Jun/2020 02:28:06] "GET /static/css/color.css HTTP/1.1" 404 1663
[02/Jun/2020 02:28:06] "GET /static/js/script.js HTTP/1.1" 404 1660
Not Found: /coming-soon/images/logo.png
[02/Jun/2020 02:28:06] "GET /coming-soon/images/logo.png HTTP/1.1" 404 3713
Not Found: /coming-soon/images/resources/coming-soon-bg.jpg
[02/Jun/2020 02:28:06] "GET /coming-soon/images/resources/coming-soon-bg.jpg HTTP/1.1" 404 3773
[02/Jun/2020 02:28:06] "GET /static/js/downCount.js HTTP/1.1" 404 1669
[02/Jun/2020 02:28:06] "GET /static/js/script.js HTTP/1.1" 404 1660
[02/Jun/2020 02:28:07] "GET /coming-soon/ HTTP/1.1" 200 2555
[02/Jun/2020 02:28:07] "GET /static/css/responsive.css HTTP/1.1" 404 1678
[02/Jun/2020 02:28:07] "GET /static/css/style.css HTTP/1.1" 404 1663
[02/Jun/2020 02:28:07] "GET /static/js/downCount.js HTTP/1.1" 404 1669
[02/Jun/2020 02:28:07] "GET /static/main.min.js HTTP/1.1" 404 1657
[02/Jun/2020 02:28:07] "GET /static/css/main.min.css HTTP/1.1" 404 1672
[02/Jun/2020 02:28:07] "GET /static/css/color.css HTTP/1.1" 404 1663
Not Found: /coming-soon/images/logo.png
[02/Jun/2020 02:28:07] "GET /static/js/script.js HTTP/1.1" 404 1660
[02/Jun/2020 02:28:07] "GET /coming-soon/images/logo.png HTTP/1.1" 404 3713
[02/Jun/2020 02:28:07] "GET /static/js/downCount.js HTTP/1.1" 404 1669
Not Found: /coming-soon/images/resources/coming-soon-bg.jpg
[02/Jun/2020 02:28:07] "GET /coming-soon/images/resources/coming-soon-bg.jpg HTTP/1.1" 404 3773
[02/Jun/2020 02:28:07] "GET /static/js/script.js HTTP/1.1" 404 1660
[02/Jun/2020 02:28:07] "GET /coming-soon/ HTTP/1.1" 200 2555
[02/Jun/2020 02:28:07] "GET /static/css/style.css HTTP/1.1" 404 1663
[02/Jun/2020 02:28:07] "GET /static/css/responsive.css HTTP/1.1" 404 1678
[02/Jun/2020 02:28:07] "GET /static/css/main.min.css HTTP/1.1" 404 1672
[02/Jun/2020 02:28:07] "GET /static/css/color.css HTTP/1.1" 404 1663
[02/Jun/2020 02:28:07] "GET /static/main.min.js HTTP/1.1" 404 1657
[02/Jun/2020 02:28:07] "GET /static/js/downCount.js HTTP/1.1" 404 1669
Not Found: /coming-soon/images/logo.png
[02/Jun/2020 02:28:07] "GET /coming-soon/images/logo.png HTTP/1.1" 404 3713
[02/Jun/2020 02:28:07] "GET /static/js/script.js HTTP/1.1" 404 1660
Not Found: /coming-soon/images/resources/coming-soon-bg.jpg
[02/Jun/2020 02:28:07] "GET /coming-soon/images/resources/coming-soon-bg.jpg HTTP/1.1" 404 3773
[02/Jun/2020 02:28:07] "GET /static/js/downCount.js HTTP/1.1" 404 1669
[02/Jun/2020 02:28:07] "GET /static/js/script.js HTTP/1.1" 404 1660
[02/Jun/2020 02:28:08] "GET /coming-soon/ HTTP/1.1" 200 2555
[02/Jun/2020 02:28:08] "GET /static/css/style.css HTTP/1.1" 404 1663
[02/Jun/2020 02:28:08] "GET /static/css/main.min.css HTTP/1.1" 404 1672
[02/Jun/2020 02:28:08] "GET /static/js/downCount.js HTTP/1.1" 404 1669
[02/Jun/2020 02:28:08] "GET /static/css/color.css HTTP/1.1" 404 1663
[02/Jun/2020 02:28:08] "GET /static/css/responsive.css HTTP/1.1" 404 1678
[02/Jun/2020 02:28:08] "GET /static/main.min.js HTTP/1.1" 404 1657
[02/Jun/2020 02:28:08] "GET /static/js/script.js HTTP/1.1" 404 1660
Not Found: /coming-soon/images/resources/coming-soon-bg.jpg
[02/Jun/2020 02:28:08] "GET /coming-soon/images/resources/coming-soon-bg.jpg HTTP/1.1" 404 3773
Not Found: /coming-soon/images/logo.png
[02/Jun/2020 02:28:08] "GET /coming-soon/images/logo.png HTTP/1.1" 404 3713
[02/Jun/2020 02:28:08] "GET /static/js/downCount.js HTTP/1.1" 404 1669
[02/Jun/2020 02:28:08] "GET /static/js/script.js HTTP/1.1" 404 1660
[02/Jun/2020 02:32:34] "GET /coming-soon/ HTTP/1.1" 200 2555
[02/Jun/2020 02:32:34] "GET /static/css/color.css HTTP/1.1" 404 1663
[02/Jun/2020 02:32:34] "GET /static/main.min.js HTTP/1.1" 404 1657
[02/Jun/2020 02:32:34] "GET /static/css/responsive.css HTTP/1.1" 404 1678
[02/Jun/2020 02:32:34] "GET /static/js/downCount.js HTTP/1.1" 404 1669
[02/Jun/2020 02:32:34] "GET /static/css/main.min.css HTTP/1.1" 404 1672
[02/Jun/2020 02:32:34] "GET /static/css/style.css HTTP/1.1" 404 1663
[02/Jun/2020 02:32:34] "GET /static/js/script.js HTTP/1.1" 404 1660
Not Found: /coming-soon/images/logo.png
[02/Jun/2020 02:32:34] "GET /coming-soon/images/logo.png HTTP/1.1" 404 3713
[02/Jun/2020 02:32:34] "GET /static/js/downCount.js HTTP/1.1" 404 1669
Not Found: /coming-soon/images/resources/coming-soon-bg.jpg
[02/Jun/2020 02:32:34] "GET /coming-soon/images/resources/coming-soon-bg.jpg HTTP/1.1" 404 3773
[02/Jun/2020 02:32:34] "GET /static/js/script.js HTTP/1.1" 404 1660

2 个答案:

答案 0 :(得分:0)

将您的STATICFILES_DIRS更改为

BASE_DIR = os.path.dirname(os.path.dirname(os.path.abspath(__file__)))

STATIC_URL = '/static/'
STATICFILES_DIRS = [os.path.join(BASE_DIR, 'static')]

应该可以解决问题。

在您的html中,还缺少%来关闭静态标记:

<script src="{% static 'js/script.js' %}"></script>

并运行py manage.py collectstatic

答案 1 :(得分:0)

更改STATICFILES_DIRS

BASE_DIR = os.path.dirname(os.path.dirname(os.path.abspath(__file__)))
STATIC_URL = '/static/'
STATIC_ROOT = os.path.join(BASE_DIR, 'static')