首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Django on Heroku,Yuglify和CollectStatic问题

Django on Heroku,Yuglify和CollectStatic问题
EN

Stack Overflow用户
提问于 2014-08-05 22:25:08
回答 2查看 927关注 0票数 1

我正在使用Django-Pipeline来缩小我的javascript。当我将我的项目推送到Heroku,并且CollectStatic运行时,它会给我错误

代码语言:javascript
复制
pipeline.exceptions.CompressorError: /usr/bin/env: yuglify: No such file or directory

但是当我手动运行CollectStatic时,Yuglify运行没有任何问题。我找不到问题所在。在这种情况下,我应该向你们展示什么代码呢?

EN

回答 2

Stack Overflow用户

发布于 2014-12-30 11:37:22

我的解决方案是在这里的代码库中添加一个"yuglify“部分:https://github.com/nigma/heroku-django-cookbook

下面是我的代码:

bin/install_yuglify

代码语言:javascript
复制
#!/usr/bin/env bash
set -eo pipefail
npm install -g yuglify

然后将以下代码添加到bin/post_compile (在第23行附近...)

代码语言:javascript
复制
if [ -f bin/install_yuglify ]; then
    echo "-----> Running install_yuglify"
    chmod +x bin/install_yuglify
    bin/install_yuglify
fi

你应该准备好了:)

您可以在此处查看我的代码,以供参考:https://github.com/GK-12/rpi_csdt_community/tree/master/bin

祝好运!

票数 1
EN

Stack Overflow用户

发布于 2017-06-21 21:32:19

我设法用一个不那么痛苦的解决方案解决了这个问题。Heroku为您提供了构建包,这实际上是您的应用程序将要在其上构建的环境。默认情况下,您拥有python buildpack。这就是为什么系统能够运行像python manage.py这样的命令的原因。我的解决方案如下: 1)安装nodejs buildpack作为第一个buildpack

代码语言:javascript
复制
heroku buildpacks:add --index 1 heroku/nodejs

2)添加与requirements.txt相同路径下的package.json 3)在package.json中添加yuglify的依赖

另一种解决方案是更改压缩,并使用python编写的压缩。

代码语言:javascript
复制
PIPELINE['CSS_COMPRESSOR']  = 'pipeline.compressors.cssmin.CSSMinCompressor'
PIPELINE['JS_COMPRESSOR'] = 'pipeline.compressors.jsmin.JSMinCompressor'

pip安装cssmin jsmin

我不清楚jsmin和yuglify哪个更好。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/25141236

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档