问题标签 [collectstatic]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
python - 为什么我的 django 静态文件最后有数字
我必须调试一些现有的 Django 项目来构建其他开发人员。
在我的本地开发环境中,所有静态文件的路径都像
/static/myapp/module/user.js
但是当我testing
在测试服务器上看到 html 时,我可以看到类似的文件
static/myapp/module/user.42323gdb.js
现在我想知道为什么系统使用该文件而不是 user.js。
有没有我可以修复的设置或者它打算这样做
django - 让 django-pipeline 和 bower 一起玩得很好
我正在将凉亭组件安装到external/bower_components/
我的项目根目录下。我有额外的静态文件static
以及一些已安装应用程序的一部分。我正在尝试使用 django-pipeline 来缩小所有存在的静态文件,bower_components
而我不理会其他静态文件。
我的问题是我不知道如何使用 django-pipeline 来缩小我的凉亭组件,同时又不将所有凉亭包复制到目标目录。
在settings.py
:
当我运行时python manage.py collectstatic
,我最终得到了我想要的所有staticfiles
东西(静态基础中的东西以及从凉亭中拉入的东西的缩小版本),以及凉亭中每个包的完整来源。从最终用户的角度来看,这是可行的,但是我实际上并不想要很多多余的垃圾。
为了解决这个问题,我尝试了python manage.py collectstatic -i bower_components
. 但是在这种情况下,忽略不仅会导致collectstatic
不复制文件,还会导致 django-pipeline 看不到文件,最终导致
如果我尝试使用一些自定义管道查找器,例如pipeline.finders.FileSystemFinder
它会导致collectstatic
忽略我想要的所有静态脚本和 cssdjango.contrib.admin
以及我的static/
文件夹。
有没有一种方法可以让我吃蛋糕并吃掉它,这样我就可以获得collectstatic
复制功能来关注一个组,而 django-pipeline 的组合/缩小关注另一个组?
写完之后,我意识到答案可能是使用 and 显式收集和缩小我安装的应用程序中的所有脚本和 css,PIPELINE_CSS
但这PIPELINE_JS
似乎并不理想,因为每次集成新应用程序时都会产生不寻常的开销。
django - 管道 / yUglify 的收集文件失败:系统找不到指定的路径
我一直在尝试让 django-pipeline 来组合和缩小我的 css 和 js 资产。我似乎无法解决以下问题。当我运行时:
我收到一个错误:
我可能需要安装一些额外的软件包吗?如果是这样,怎么做?
我对 django-pipeline 的设置:
这是完整的输出:
更新
我用另一个压缩机再次尝试过:
这给出了完全相同的结果,我可能做错了什么?
更新 2
如果我将压缩器设置为 None 一切正常,即文件被合并并放置在静态文件夹中。他们也得到了正确的服务。
所以它必须是访问或使用压缩器的东西。我在 Windows 上运行。
更新 3
我在 /site-packages/pipeline/compressors/ 中添加了一些 print() 命令到init .py
命令是: /usr/bin/env/ yuglify --type=css --terminal 哪个可以(可能?)永远不会在 Windows 上工作。
然后我尝试将它部署到 AWS Elastic Beanstalk,但我也收到了一个错误:
我知道可以手动设置压缩机箱的位置,但是在哪里为 Elastic Beanstalk 设置它?
任何建议如何解决这个问题?
python - Django pipeline - How to serve static files after running collectstatic?
My project structure
So I run the collectstatic command. My css/js files are gathered (and compressed into a single file) into the STATIC_ROOT directory (myProject/myProject/static). So far so good.
First question: How do I serve them?
I tried calling http://127.0.0.1:8000/static/css/styles.css but it returns a 404 file not found error.
I tried adding STATIC_ROOT in the STATICFILES_DIRS but then I get the error:
The STATICFILES_DIRS setting should not contain the STATIC_ROOT setting.
Second question: Can Django serve "project-wide" static files?
I know that you can serve "application-wide" static files by calling "/static/myApp/my-static-file.css". But does Django know about myProject/myProject/static the way it knows about the static folder inside each app? Or is it something you need to tell explicitly?
I've read some blog/forum posts saying that you need to change urls.py to but I tried, without success. Do I have to?
I find it pretty hard to find information about static files in Django's documentation and I'm very confused right now.
EDIT: now I am really confused: I tried setting PIPELINE_ENABLED = False and now this url works. http://127.0.0.1:8000/static/css/styles.css but it doesn't help because when PIPElINE_ENABLED is False, it doesn't try to call the compressed css, but all files separately.
python - 将 Django 的 collectstatic 与 boto S3 一起使用会在一段时间后引发“错误 32:Broken Pipe”
我正在使用 boto 和 S3 来存储我的 Django 站点的静态文件。使用该collectstatic
命令时,它会完美地上传大量文件,然后在文件处停止并抛出"Error 32: Broken Pipe."
当我尝试再次运行该命令时,它会跳过它已经上传的文件并从它停止的文件开始,之前在没有上传任何新内容的情况下抛出相同的错误。
django - 使用 django-pipeline 收集静态后自动删除源文件
使用 django-pipeline,是否可以在 collectstatic 之后自动删除源文件?
例如 :
收集静态:
(我不想要 jquery.js、d3.js、application.js)
django - Django collectstatic 找不到管理媒体内容
我在 Ubunutu 上使用 Virtualenv 和 Gunicorn 等运行 Django 1.8.2 项目。由于某种原因,collectstatic 没有获得管理媒体,但它确实适用于我在 osx 上的本地开发环境。
我不确定问题出在哪里?是设置吗?但是为什么它在 osx 上运行而不是在我的 Ubuntu 服务器上运行呢?
这是我的设置:
python - 如何为我的 Django 项目的本地开发禁用白噪声?
我已经使用Heroku Django 项目模板设置了一个部署在 Heroku 上的Django 项目。Heroku 的模板使用whitenoise来收集位于我的项目根目录的 /static/ 目录中的静态文件。
这对我的生产环境非常有用;每次我将新文件推送到服务器时,Heroku 都会运行“manage.py collectstatic”。但是,在本地开发时会很痛苦:每次我更改我的静态文件(例如,css)时,我都必须手动运行“python manage.py collectstatic”,然后才能在我的开发服务器上看到更改。
有没有一种简单的方法可以在我的本地机器上禁用白噪声,这样我每次想查看本地静态文件的更改时就不必运行“python manage.py collectstatic”?
我尝试创建一个单独的“development_settings.py”文件并删除该文件中对 whitenoise 的所有引用,但它不起作用,因为在 wsgi.py 中仍然引用了 whitenoise,这会导致错误。
django - 如何在heroku上为django设置collectfast?
如何在heroku上为django设置collectfast ?这是假设我已经成功设置了从 Amazon S3 托管和服务的静态文件。
django - Django 静态与用户上传的文件
在阅读了大量文档之后,我仍然没有很好地了解究竟什么是静态文件与用户上传的文件......或者静态文件究竟是什么。
1. 静态文件
Django将静态文件描述为“图像、javascript、css”之类的东西。好的,有道理。但是所有那些 .py 文件和 .html 模板文件等......它们不是静态的?当网站运行时,它们不会“改变”。究竟什么是静态文件?“提供静态文件”是什么意思?这与“提供”“views.py”文件或“home.html”文件有什么不同?
最重要的是,为什么我什至需要“collectstatic”呢?为什么我所有的静态文件都需要放在一个地方?我想如果您使用单独的网络服务器来“服务”它们,那是有道理的......仍然,不确定这到底意味着什么。
另外,无论如何,“collectstatic”去哪里找到所有假定的静态文件?它是否会遍历我的所有代码并查看我在哪里访问图像/javascript 文件?
2.用户上传的文件
假设我只是从表面上看这个静态的东西,如果用户上传图片会发生什么?我是否需要在后台运行的程序不断运行“collectstatic”?
Django将媒体文件描述为管理用户上传内容的一种方式。老实说,我还没有尝试过(现在会这样做),但这仍然代表了一个问题:如果将所有“静态”文件放在一个地方如此重要,为什么突然不为用户这样做是可以的 -上传的文件?
这个“MEDIA_ROOT”目录中的文件不是由“collectstatic”收集的吗?如果我只是把我所有的图片/javascript/css 放到这个媒体文件夹中呢?然后什么都没有收集?这有什么问题吗?
感谢任何人都可以对此提出的任何见解。