Django-pipe does not compile sass files

I am using django-1.3 with django-staticfiles-1.2.1 and django-pip-1.2.6. This setting should work as per the documentation.

At the root of my project, I have a staticfiles directory that contains a sass directory containing my sass files. I would like the django pipeline to compile my sass files and put them in /static/css/master.css

Here is an excerpt of my settings.py file

 MEDIA_ROOT = '/home/jonasg/dev/projectX/media/' STATIC_ROOT = 'static/' STATIC_URL = '/static/' PIPELINE=True PIPELINE_AUTO=True STATICFILES_STORAGE = 'pipeline.storage.PipelineStorage' STATICFILES_DIRS = ( 'staticfiles', ) PIPELINE_COMPILERS = ( 'pipeline.compilers.sass.SASSCompiler', ) PIPELINE_CSS_COMPRESSOR = 'pipeline.compressors.cssmin.CssminCompressor' PIPLINE_CSS = { 'base': { 'source_filenames': ( 'sass/*.sass' ), 'output_filename': 'css/master.css' } } PIPELINE_COMPILERS = ( 'pipeline.compilers.sass.SASSCompiler', ) PIPELINE_SASS_BINARY='/usr/bin/sass' STATICFILES_FINDERS = ( 'staticfiles.finders.FileSystemFinder', 'staticfiles.finders.AppDirectoriesFinder', 'staticfiles.finders.DefaultStorageFinder' ) 

When i run. /manage.py collectstatic, all files from / staticfiles are copied to / static, but nothing compiles or shrinks. I also noticed that these commands take everything from / media and put them in / static, this is not the behavior I expected.

Also, as you have already noticed, I use django-staticfiles, which is recommended by the django pipeline if you are still using django-1.3. I do not understand why I should stick with django-staticfiles if this application was ported to django-1.3?

+4
source share
2 answers

The SASS compiler expects your sass file to have a .scss extension. It seems that SASS has added another extension / syntax, this will be fixed in the next version of the pipeline.

Remember to also change the staticfiles repository:

 STATICFILES_STORAGE = 'pipeline.storage.PipelineCachedStorage' 
0
source

I am facing the same problem, here is my fix, add

 PIPELINE_STORAGE = 'pipeline.storage.PipelineCachedStorage' 

in settings. This works for me, at least.

0
source

Source: https://habr.com/ru/post/1413386/


All Articles