如何解决未找到和加载 django 静态文件
使用 django v2.2.1
我有一个给定的项目目录。结构:
在根项目目录中。 static
目录中有一些静态文件。
在 base.html
文件中,
{% load static %}
<!doctype html>
<html lang="en">
<head>
<!-- Required meta tags -->
<meta charset="utf-8">
<meta name="viewport" content="width=device-width,initial-scale=1">
<!-- favicon -->
<link rel="shortcut icon" href="{% static 'favicon.ico' %}" />
<!-- Dropzone js -->
<link rel="stylesheet" href="{% static 'dropzone.css' %}">
<script src="{% static 'dropzone.js' %}" defer></script>
<!-- Custom js & css -->
<link rel="stylesheet" href="{% static 'style.css' %}">
.
.
这是 settings.py
文件:
# Static files (CSS,JavaScript,Images)
# https://docs.djangoproject.com/en/2.2/howto/static-files/
STATIC_URL = '/static/'
STATICFILES_DIR = [
os.path.join(BASE_DIR,'static'),os.path.join(BASE_DIR,'sales',]
MEDIA_URL = '/media/'
MEDIA_ROOT = os.path.join(BASE_DIR,'media')
在urls.py
from django.contrib import admin
from django.urls import include,path
from django.conf import settings
from django.conf.urls.static import static
urlpatterns = [
path('admin/',admin.site.urls),path('',include('sales.urls',namespace='sales')),path('reports/',include('reports.urls',namespace='reports'))
]
urlpatterns += static(settings.STATIC_URL,document_root=settings.STATIC_ROOT)
urlpatterns += static(settings.MEDIA_URL,document_root=settings.MEDIA_ROOT)
还有 sales
的 urlpatterns
urlpatterns = [
path('',home_view,name='home'),path('sales/',SaleListView.as_view(),name='list'),path('sales/<pk>/',SaleDetailView.as_view(),name='detail'),]
尝试过
$ python manage.py findstatic style.css
No matching file found for 'style.css'.
我也一直收到这个错误
我已经多次重启服务器。
解决方法
将以下内容添加到 settings.py
中的 TEMPLATES 应该对您的情况有所帮助:
- 对于 Django3.x
TEMPLATES = [
{
...
'DIRS': [BASE_DIR / 'templates'],'APP_DIRS': True,...
}
- 对于 Django2.x
import os
...
TEMPLATES = [
{
...
'DIRS': os.path.join(BASE_DIR,'templates'),...
}
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。