2016-04-10 11 views
0

Ich habe Probleme mit django-pipeline Ihnen dieDjango Einstellungen nicht

settings.STYLUS_BINARY für den Stylus Compiler einstellen müssen.

In meinem settings.py ich habe folgendes:

STYLUS_BINARY = os.path.join(BASE_DIR, 'node_modules', '.bin', 'stylus')

Wenn ich dies auf die Konsole aus sehe ich den Ordner:

c:/Users/chowza/myproject/node_modules/.bin/stylus

Allerdings, wenn ich in graben das Django-Pipeline-Modul, das tatsächlich verwendet settings.STYLUS_BINARY und fügen Sie einen Druck dort sehe ich beim Drucken settings.STYLUS_BINARY:

('usr/bin/env/','stylus')

Das ist, was der Standardpfad von STYLUS_BINARY bis nach django-pipeline

An der Spitze dieses Moduls festgelegt ist, ist eine Funktion, die sagt from pipeline.conf import settings so nehme ich meine Einstellungen-Datei importiert wird.

Das sagt mir, dass meine settings.STYLUS_BINARY nicht festgelegt ist.

Ich verwende python manage.py collectstatic --settings myproject.settings, damit ich Stylus-Dateien mit settings.STYLUS_BINARY zu css kompilieren kann.

Also meine Frage ist, warum ist die Einstellungen Variable nicht gesetzt? Was mache ich falsch?

Hinweis: Dies wurde unter Windows getestet und auf Heroku Einsatz

+0

Erhalten Sie Fehlerprotokolle? – JClarke

+0

@Jclarke der Fehler ist ein nicht beschreibender Fehler, der sagt, dass eine Datei beim Ausführen von Stylus_Compiler von django-pipeline fehlt, daher ging ich zum Drucken der Position der 'settings.STYLUS_BINARY' im Stylus_Compiler und fand sie'/user/bin/env/'anstelle von' c:/users/chowza/myproject/node_modules/.bin/stylus' was ich erwarten würde, da ich das in meine Einstellungsdatei geschrieben habe –

+0

Hey, ich habe gerade getestet, dass es den gleichen Fehler hat. Ich habe meine Kompressoren aktualisiert und der Fehler ist verschwunden und alle Dateien, die nicht gesammelt wurden, wurden gesammelt. – JClarke

Antwort

0

ein paar Tage auf dieser aufgewendet. Viel Zeit verschwendet.

Bibliotheken, die schlechte Dokumentation haben, saugen.

in settings.py

STYLUS_BINARY = os.path.join(BASE_DIR, 'node_modules', '.bin', 'stylus')

sollte sein:

PIPELINE['STYLUS_BINARY'] = os.path.join(BASE_DIR, 'node_modules', '.bin','stylus'),

Dies wird vorausgesetzt, Sie haben einen node_modules/.bin/stylus. Wichtig ist, dass es nicht als Konstante, sondern als Hash von PIPELINE gesetzt wird.

Verwandte Themen