Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/heroku/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Django';s collectstatic忽略Heroku环境中的文件夹_Django_Heroku_Django Staticfiles_Whitenoise - Fatal编程技术网

Django';s collectstatic忽略Heroku环境中的文件夹

Django';s collectstatic忽略Heroku环境中的文件夹,django,heroku,django-staticfiles,whitenoise,Django,Heroku,Django Staticfiles,Whitenoise,我正在构建一个Django+Vue整体,我正在尝试实现的发布管道假设将Vue前端构建到Django应用程序的静态文件夹中,运行collectstatic并启动服务器。静态文件通过WhiteNoise提供 它在我的机器上工作得很好。构建的文件夹最终位于收集的静态文件目标中,其内容得到了很好的服务: → 但是,当托管在Heroku上时,除了这个动态构建文件夹之外,其他所有内容都会被收集,它不会出现在staticfiles中,即使它出现在应用程序的static文件夹中。我确保执行顺序正确,甚至在确保

我正在构建一个Django+Vue整体,我正在尝试实现的发布管道假设将Vue前端构建到Django应用程序的静态文件夹中,运行
collectstatic
并启动服务器。静态文件通过WhiteNoise提供

它在我的机器上工作得很好。构建的文件夹最终位于收集的静态文件目标中,其内容得到了很好的服务:

但是,当托管在Heroku上时,除了这个动态构建文件夹之外,其他所有内容都会被收集,它不会出现在
staticfiles
中,即使它出现在应用程序的
static
文件夹中。我确保执行顺序正确,甚至在确保文件夹成功构建后手动运行
collectstatic

您可能已经注意到,我将此文件夹放在.gitignore中,但我尝试将其从中删除,但没有任何效果

为什么会有这样奇怪的行为


p、 将DEBUG设置为True并通过Django的开发服务器提供静态文件将导致一个工作的应用程序,这再次证明文件位于正确的位置。

听起来好像是在动态地构建该目录才是问题所在。您可能必须为该过程创建一个帐户。或者使用创建它的方法。

结果证明,我只需要更改构建包的顺序,以便NodeJS构建包在Python构建包之前运行


您可以在这里阅读有关设置构建包顺序的内容:

在Heroku构建阶段(我已经检查过)成功创建了文件夹,在发布阶段(之后),我显式地调用了
collectstatic
——但是,
staticfiles
文件夹中没有显示任何内容,这太奇怪了。