我一直試圖獲得django-pipeline的設置,以便我可以編譯和連接我的資產。我還想從存儲庫中刪除已編譯的css文件,以避免在請求中出現合併衝突。Django Pipeline,Heroku和SASS
我一直在試圖讓django-pipeline編譯文件作爲部署過程的一部分,但無法弄清楚這一點。我使用SASS編寫我的CSS。我管線的設置是這樣的:
STATICFILES_STORAGE = 'pipeline.storage.PipelineCachedStorage'
PIPELINE_CSS = {
'main': {
'source_filenames': (
'sass/blah.scss',
'sass/main.scss',
),
'output_filename': 'css/main.css',
'extra_context': {
'media': 'screen',
},
},
}
PIPELINE_COMPILERS = (
'pipeline.compilers.sass.SASSCompiler',
)
這個本地的偉大工程,在我的/上海社會科學院的文件夾,然後將它們組合在一起構成的main.css文件生成.css文件。如果我將這些CSS文件檢入我的git存儲庫並推送到Heroku,它也可以正常工作。然而,如果我忽略它們,我想這樣做,我沒有提交編譯的文件,然後Django管道找不到要組合的文件。我不確定我如何才能在Heroku上使用sass編譯,但我無法找到任何有關它的信息。
如果需要,我可以提供更多關於我的設置的信息,希望有人知道這件事!
我在試圖讓'django-compressor'編譯Heroku上的Zurb Foundation scss時發現了這個響應,並且使用它作爲參考!在我的情況下,因爲不需要node.js包,所以只能在multi-buildpack中引入ruby和python。Gemfile只需要有sass,然後不需要rake或config.rb。 Heroku將創建sass gem,然後是像'('text/x-scss','sass --scss {infile} {outfile}')這樣的django壓縮器預編譯器語句。感謝您提供有用的指導,幫助您做到這一點! – mirth23
我不得不添加Gemfile.lock – dirk