URL адресите са съставени от директории и имена на файлове. Всичко, което предхожда /
се счита за директория. Всичко след крайния /
е името на файла. Вашият проблем е, че използвате относителни URL адреси. Когато кажете
static/pics/gamma.png
вашият браузър прави заявка за този файл спрямо директорията на текущата страница. В случай на URL адреси като /
и /shop
, директорията е /
. Браузърът ще поиска /static/pics/gamma.png
.
В случай на URL адреси като /shop/item/1
, директорията е /shop/item/
. След това вашият браузър ще поиска /shop/item/static/pics/gamma.png
.
Тъй като вашите URL адреси съвпадат с първия, трябва да ги съхранявате като абсолютни URL адреси (с водещ /
), така че браузърът да направи правилната заявка.
Наполовина свързана бележка, трябва да използвате url_for
когато е възможно.
url_for('static', filename='css/home.css')