11

मैं कम लिखने के लिए कोडेकिट का उपयोग करता हूं जो उसके बाद स्वचालित रूप से सीएसएस में परिवर्तित हो जाता है।संपत्तियों से फ़ाइलों को छोड़कर: रेलों में प्रीकंपाइल

मैं नहीं चाहता कि रेल मेरी कम फ़ाइलों को सीएसएस में परिवर्तित करने के लिए चाहते हैं, बल्कि मैं इसे कोडकिट करता हूं।

अगर मैं के माध्यम से

rake assets:precompile 

संपत्ति precompile मैं

rake aborted! 
cannot load such file -- less 

मैं कैसे precompiling से एक विशिष्ट फ़ोल्डर/फ़ाइल प्रकारों को छोड़ करते मिल सकता है? (मेरे सारे कम फ़ाइलों में एप्लिकेशन/आस्तियों/स्टाइलशीट/कम और सीएसएस (जो मैं precompiled करने के लिए) चाहते हैं एप्लिकेशन/आस्तियों/स्टाइलशीट/सीएसएस में हैं

अद्यतन

application.less नष्ट करने से इस हल करती हैं लेकिन कैसे करना है मैं इसे प्रसंस्करण से पहली जगह में Asset Pipeline गाइड से छोड़कर

उत्तर

18

:

फ़ाइलें संकलन के लिए डिफ़ॉल्ट मिलान application.js भी शामिल है, एपी plication.css और सभी गैर जे एस/सीएसएस फ़ाइलों (यानी, .coffee और .scss फ़ाइलें स्वचालित रूप से के रूप में वे जे एस/सीएसएस के संकलन शामिल नहीं हैं):

[ Proc.new{ |path| !File.extname(path).in?(['.js', '.css']) }, /application.(css|js)$/ ] 

आप अन्य प्रकट होता है, तो या अलग-अलग शैली और जावास्क्रिप्ट फ़ाइलों को शामिल करने, आप उन्हें precompile सरणी के लिए जोड़ सकते हैं:

config.assets.precompile += ['admin.js', 'admin.css', 'swfObject.js'] 

तो, मैं कहूँगा कि अपने समाधानसंशोधित करने के लिए हैफ़ाइलों को बाहर करने के लिए। हो सकता है कि कुछ इस तरह (एक उपयुक्त वातावरण फ़ाइल में, config/environments/production.rb की तरह): तो फिर

application.css 
/css 
(generated by code kit) 
|...home.css 
|...index.css 
/less 
|...home.less (assuming this is the extension) 
|...index.less 

, अपने application.css फ़ाइल में:

config.assets.precompile = [ Proc.new{ |path| !File.extname(path).in?(['.js', '.css', '.less']) }, /application.(css|js)$/ ] 
+0

यह काम नहीं करता है .. एक ही त्रुटि –

+1

यह विफल हो जाती है क्योंकि रेल को पता नहीं है कि 'कम' फ़ाइलों के साथ क्या करना है। अपने ऐप में 'कम-रेल' मणि जोड़ना त्रुटि को हटा सकता है लेकिन सवाल में आपने जो समाधान पूछा है वह नहीं है। – Kashyap

+0

ठीक सुधार - यह तब काम करता है जब मैं इसे उत्पादन में डालता हूं। आरबी .. यह एप्लिकेशन.आरबी नहीं .. किसी भी बंडल निष्पादन के साथ –

1

एप्लिकेशन/संपत्ति फ़ोल्डर के अंतर्गत अपने निर्देशिका संरचना तो है , एक निर्देश होना चाहिए जो *= require_tree . कहता है यह सभी फाइलों/निर्देशिकाओं को स्कैन करने के लिए रेल बताता है और सभी फ़ाइलों को एक सीएसएस फ़ाइल में संकलित करने का प्रयास करता है।

इसे *= require_directory ./css पर बदलें और यह संकलन के लिए css निर्देशिका के तहत फ़ाइलों को लोड करेगा।

+0

अभी भी वही है :(यह ध्यान देने योग्य है कि मेरा पेड़ /css/application.css और/कम/application.less –

+0

आह! यह असफल हो जाएगा क्योंकि application.css मुख्य फ़ाइल है जिसमें उप-संपत्तियों को संकलित किया जाएगा। – Kashyap

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