URL निर्देशिकाओं और फ़ाइल नामों से बने होते हैं। कुछ भी जो / . से पहले आता है निर्देशिका मानी जाती है। अंतिम / . के बाद कुछ भी फ़ाइल नाम है। आपकी समस्या यह है कि आप सापेक्ष URL का उपयोग कर रहे हैं। जब आप कहते हैं
static/pics/gamma.png
आपका ब्राउज़र वर्तमान पृष्ठ की निर्देशिका के सापेक्ष उस फ़ाइल के लिए अनुरोध करता है। / . जैसे URL के मामले में और /shop , निर्देशिका है / . ब्राउज़र /static/pics/gamma.png . का अनुरोध करेगा .
/shop/item/1 . जैसे URL के मामले में , निर्देशिका है /shop/item/ . फिर आपका ब्राउज़र /shop/item/static/pics/gamma.png का अनुरोध करेगा .
चूंकि आपके URL पहले वाले URL से मेल खाते हैं, इसलिए आपको उन्हें निरपेक्ष URL के रूप में संग्रहीत करना चाहिए (अग्रणी / . के साथ ) ताकि ब्राउज़र सही अनुरोध करे।
अर्ध-संबंधित नोट पर, आपको url_for . का उपयोग करना चाहिए जब भी संभव हो।
url_for('static', filename='css/home.css')