2012-06-29 12 views
7

मेरे पास एक Django प्रोजेक्ट है जो बिल्डआउट का उपयोग करता है। एप्लिकेशन को चलाने या डिबग करने पर यह मेरी बिल्डआउट स्क्रिप्ट का उपयोग कर ठीक चलाता है। मैं अपनी कम फ़ाइलों को संकुचित और संकलित करने के लिए django-compressor का भी उपयोग करता हूं। मैंने नोड के साथ कम सर्वर पक्ष स्थापित किया है और आप शेल से सामान्य रूप से कम से कम बाइनरी तक पहुंच सकते हैं। django-compressor popc कमांड कमांड चलाने के लिए चलाता है। जब यह ऐसा करता है और अपवाद फेंक दिया जाता है:/bin/sh: lessc: कमांड नहीं मिला।रन के साथ Django चलाना कम सीएसएस नहीं मिल सकता

यदि मैं चलाता/bin/sh lessc इसे पाता है। अगर मैं इंटरेक्टिव पायथन में जाता हूं और पॉपन चलाता हूं (['/ bin/sh', '-c', 'lessc']) यह इसे पाता है। PyCharm में Django का उपयोग करने वाला कौन सा खोल या पर्यावरण उपयोग करता है और मैं इसे/etc/paths या $ HOME/.bashrc आदि पढ़ने के लिए कैसे सेट अप कर सकता हूं। Lessc/usr/local/bin में स्थित है/etc/पथ।

मैं पर मैक OSX 10.7 हूँ, किसी भी समर्थन के लिए btw

धन्यवाद, ट्रैविस

उत्तर

5

के रूप में Django कंप्रेसर डॉक्स में बताया, तो आप उपयोग कर सकते हैं:

COMPRESS_PRECOMPILERS = (
    ('text/less', 'lessc {infile} {outfile}'), 
) 

लेकिन शायद किसी कारण से Django कम बाइनरी नहीं मिल सका। तो उसके बाद इसे अपने पूर्ण नाम से दर्ज करें:

COMPRESS_PRECOMPILERS = (
    ('text/less', '/usr/local/bin/lessc {infile} {outfile}'), 
) 
9

मुझे एक ही समस्या थी। इसे ठीक करने के मैं टर्मिनल खोला और

$ which lessc 

जो मुझे दिया/usr/स्थानीय/bin/lessc

अगले, Pycharm में मैं अपने प्रोजेक्ट के लिए भागो/डीबग विन्यास खोला।

Django सर्वर ड्रॉप डाउन के तहत मैंने अपनी परियोजना का चयन किया।

कॉन्फ़िगरेशन दृश्य में 'पर्यावरण चर:' फ़ील्ड के बाद '...' पर राइट क्लिक करें।

इस पर्यावरण चर विंडो में मैं निम्नलिखित डेटा के साथ एक नई लाइन कहा: पथ (नाम) /usr/स्थानीय/बिन (मान)

सुनिश्चित करें "जनक वातावरण चर शामिल करें" चेक किया गया है।

ठीक

क्लिक करें क्लिक करें लागू करें/ठीक

बेस्ट ऑफ लक हो गया!

+0

2016 धन्यवाद बड;) – grokpot

+0

यह काम करता है!मेरे माता-पिता के माहौल में पहले से ही 'पथ' और 'पाथ' में '/ usr/local/bin' है, क्यों काम नहीं करता है? – Dozer

+0

मेरे लिए यह एनवीएम स्थापना पथ था। बहुत बहुत धन्यवाद :) – ali

1

आपको lessc बाइनरी की आवश्यकता है। इसे पाने के कुछ अलग तरीके हैं। व्यक्तिगत रूप से, मैं इसे स्थापित करने के लिए (डेबियन-आधारित distros पर, Ubuntu की तरह) गैर NodeJS विधि का उपयोग करना पसंद:

sudo apt-get install node-less yui-compressor

यह निम्न स्थानों में से एक में स्थापित हो जाएगा:

/usr/local/bin/lessc 
/usr/bin/lessc 

जो आपके पैथ में पहले से होना चाहिए।

संबंधित मुद्दे