django 从错误的位置收集静态文件
Posted
技术标签:
【中文标题】django 从错误的位置收集静态文件【英文标题】:django collectstatic picking files from wrong location 【发布时间】:2022-01-09 20:50:59 【问题描述】:我是 Python 和 Django 的初学者。我正在使用 Windows10,并且我已经安装了 Python 3.10.0 和 pip 21.3.1。我使用以下命令安装了 Django
pip install virtualenvwrapper-win
mkvirtualenv firstdjango
pip install django
django-admin startproject demo
然后我为简单的静态 html 页面创建了 APP,现在我正在尝试使用静态文件。我在 root 上创建了一个名为“static”的文件夹,并将所有 css、js 等文件放在其中和 settings.py 中,我提到了以下内容。
STATIC_URL = '/static/'
STATICFILES_DIR = [
os.path.join(BASE_DIR, 'static')
]
STATIC_ROOT = os.path.join(BASE_DIR,'assets')
现在当我击球时
python manage.py collectstatic
那么它不是在复制,我的静态文件夹中的内容是评估文件夹。
当我尝试使用以下命令检查 collectstatic 尝试从何处复制时
python manage.py findstatic -v 3 dummy
然后我得到了关注
C:\Users\dell\Envs\firstdjango\lib\site-packages\django\contrib\admin\static
但我的项目位置是 E:\django\demo
我不明白,为什么 collectstatic 无法复制正确的文件,因此我的网页中没有正确的 css、js 和图像路径。
【问题讨论】:
【参考方案1】:我怀疑你的virutalenv 和你的项目不在同一个位置
你可以试试下面的方法:
pip install virtualenv // install virtualenv
virtualenv env //create your virutalenv
\pathto\env\Scripts\activate // activate your virtualenv
pip install django
django-admin startproject demo
cd demo
And then collect your statifiles
【讨论】:
它适用于您的解决方案。非常感谢。以上是关于django 从错误的位置收集静态文件的主要内容,如果未能解决你的问题,请参考以下文章
django项目部署后静态文件收集解决admin后台静态文件丢失
收集静态文件会抛出 ImproperlyConfigured