2012-10-18 9 views
6

के साथ सीएसएस मैं अपनी सीएसएस फ़ाइल को संपत्तियों में प्रकाशित करने के लिए निम्न कोड का उपयोग कर रहा हूं।वाईआई एसेट मैनेजर - छवि यूआरएल

Yii::app()->clientScript->registerCssFile(Yii::app()->assetManager->publish(Yii::getPathOfAlias('application').'/../css/combo-autocomplete.css')); 

यह सफलतापूर्वक सीएसएस पंजीकृत करता है और शैलियों ठीक काम कर रहे हैं, लेकिन निम्नलिखित सीएसएस वर्ग एक छवि का उपयोग कर।

.ui-icon { 
    background-image: url(../images/down-arrow.png); 
} 

लोड नहीं हो रहा है, इसे संपत्ति फ़ोल्डर के अंदर पथ कहा जाता है। यह

जड़/आस्तियों/छवियों के अंदर छवि की तलाश में है/

वहाँ किसी भी तरह से मूल पथ के लिए सीएसएस में छवि यूआरएल रीडायरेक्ट करना होता है, क्योंकि मैं के रूप में अपनी छवियों को पंजीकृत नहीं कर रहा हूँ अभी तक संपत्तियां।

जड़/छवियों

+1

यह आपके सीएसएस को एक संपत्ति के रूप में प्रकाशित करने के लिए इतना अधिक समझ नहीं आता है लेकिन अपनी छवियों को बेकार छोड़ देता है। या तो आप स्वयं निहित घटक (जिस स्थिति में सबकुछ प्रकाशित करते हैं) तैयार कर रहे हैं या आप नहीं (जिस स्थिति में कुछ भी प्रकाशित नहीं करते हैं)। – Jon

+0

@ जोन, अगर मैं संपत्तियों को संपत्तियों को प्रकाशित करता हूं, तो यह मेरे संपत्ति फ़ोल्डर के अंदर एक ही फ़ोल्डर नाम (छवियों) नहीं रखेगा। यह '/ root/assets/4s431e/icon.png' जैसा होगा? – Suriya

+0

मैंने टिप्पणी को एक उत्तर में विस्तारित किया। – Jon

उत्तर

11

Yii की संपत्ति प्रबंधक आप इस तरह के एक आत्म निहित तरीके से UI विजेट्स के रूप में घटकों पैकेज (वैकल्पिक मैन्युअल रूप से अपने आवेदन के अंदर विभिन्न स्थानों में विभिन्न फ़ाइलें वितरित करने के लिए किया जा रहा है यह बताने के लिए डिज़ाइन किया गया है निर्देशिका संरचना)। तो अगर आपके घटक से कुछ प्रकाशित करने के लिए यह समझ में आता है, तो सब कुछ को एक संपत्ति के रूप में प्रकाशित करना समझ में आता है।

उस स्थिति में, आपको अपने घटक को ढंकना चाहिए।

component/ 
    assets/ 
     css/ 
     images/ 
     js/ 

तब के रूप में, के बजाय Yii की संपत्ति प्रबंधक का उपयोग करके फ़ाइलें एक के बाद एक प्रकाशन के पूरे assets/ निर्देशिका प्रकाशित करते हैं। यदि आप ऐसा करते हैं, तो वे अंत random_hash के मान की जानकारी की जरूरत के बिना

assets/ 
    random_hash/ 
     css/ 
     images/ 

आपका सीएसएस तो बस url(../images/image.jpg) के साथ छवियों का उल्लेख कर सकते की तरह एक तरीके से प्रकाशित किया जा रहा होगा।

+0

मेरा सीएसएस छवियों को नहीं देखता है ((random_hash में/केवल सीएसएस फ़ाइल है। – frops

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