我试图在settings.py文件中修改以允许加载css文件,但是某些html代码仍然没有出现其样式,在终端中运行命令" python manage.py collectstatic"并且它说文件被复制但仍然没有出现效果。
这里是settings.py文件中的修改后的内容
STATIC_ROOT = '/static/'
STATICFILES_DIRS = [
os.path.join(BASE_DIR, "static"),
]
STATIC_URL = '/static/'
答案 0 :(得分:0)
在您的settings.py中提供:
STATICFILES_FINDERS = [
'django.contrib.staticfiles.finders.FileSystemFinder',
'django.contrib.staticfiles.finders.AppDirectoriesFinder',
]
BASE_DIR = os.path.dirname(os.path.dirname(os.path.abspath(__file__)))
STATICFILES_DIRS = (os.path.join(BASE_DIR, 'static_files'),
)
STATIC_ROOT = os.path.join(BASE_DIR, 'static', )
STATIC_URL = 'http://example.com/static/'
因此,如果定义了静态文件查找程序,则将static_files声明为source 静态文件,无论你放在哪个
/your_root/static_files/
将进入
/your_root/static
运行后
python manage.py collectstatic
的错误
STATICFILES_DIRS = [
os.path.join(BASE_DIR, "static"),
]
是您尝试从同一目录中获取并带到同一目录,该目录是收集的所有静态文件的目标目录。
答案 1 :(得分:0)
最好设置STATIC_ROOT = os.path.join(BASE_DIR, 'static_root')
如果您在BASE_DIR中有一个名为static
的文件夹,请添加
STATICFILES_DIRS = (
os.path.join(BASE_DIR, 'static'),
)
运行static_root/
.gitignore
添加到python manage.py collectstatic
文件
答案 2 :(得分:0)
我使用的方式是:
2.在Html中
首先加载静态文件{%load static%}
然后链接到路径
href =" {%static' name_of_app / fileName' %}"
答案 3 :(得分:-1)
您可以在最新的Django版本中将这些代码添加到settings.py中。
STATIC_URL ='/ static /'
MEDIA_URL ='/ media /'
STATICFILES_DIRS = [os.path.join(BASE_DIR,'static_in_env')]
VENV_PATH = os.path.dirname(BASE_DIR)
STATIC_ROOT = os.path.join(VENV_PATH,'static_root')
MEDIA_ROOT = os.path.join(VENV_PATH,'media_root')