Django-pipeline在运行collecstatic时找不到文件或directyory

时间:2017-11-10 18:59:47

标签: python django django-pipeline

我已经安装了django-pipeline包,它在我的本地计算机上运行良好。

当我在生产中运行collectstatic时出现问题,我收到此错误:

引发CompressorError(stderr) pipeline.exceptions.CompressorError:b' / usr / bin / env:\ xe2 \ x80 \ x98yuglify \ xe2 \ x80 \ x99:没有这样的文件或目录\ n'

我也试过使用不同的压缩机,它也没用。

以下是我的设置:

STATICFILES_STORAGE = 'pipeline.storage.PipelineCachedStorage'

STATICFILES_FINDERS = (
    'django.contrib.staticfiles.finders.FileSystemFinder',
    'django.contrib.staticfiles.finders.AppDirectoriesFinder',
    'pipeline.finders.PipelineFinder',
)

STATIC_URL = '/static/'
STATIC_ROOT = '/home/user/app/static'

MEDIA_ROOT = '/home/user/app/src/media'
MEDIA_URL = '/media/'


PIPELINE = {
    'PIPELINE_ENABLED': True,
    'STYLESHEETS': {
        'main': {
            'source_filenames': (
              '/home/user/app/static/css/main.css',
            ),
            'output_filename': 'css/main.css',
        },
    },
    'JAVASCRIPT': {
        'main': {
            'source_filenames': (
              '/home/user/app/static/js/main.js',
            ),
            'output_filename': 'js/main.js',
        }
    }
}

PIPELINE['CSS_COMPRESSOR'] = 'pipeline.compressors.yui.YUICompressor'
PIPELINE['JS_COMPRESSOR'] = 'pipeline.compressors.yui.YUICompressor'

我做错了什么?

非常感谢你!

1 个答案:

答案 0 :(得分:0)

您的环境中似乎没有安装yuglify。

我假设您正在处理Unix,因此很容易确认: 运行命令which yuglify以查看其安装位置, 如果未收到任何结果,则应在该环境中安装yuglify。

我个人通过npm顺利安装了它:npm -g install yuglify