URL terdiri dari direktori dan nama file. Apa pun yang mendahului / dianggap sebagai direktori. Apa pun setelah / terakhir adalah nama file. Masalah Anda adalah Anda menggunakan URL relatif. Saat Anda mengatakan
static/pics/gamma.png
browser Anda membuat permintaan untuk file itu relatif terhadap direktori halaman saat ini. Dalam kasus URL seperti / dan /shop , direktorinya adalah / . Browser akan meminta /static/pics/gamma.png .
Untuk URL seperti /shop/item/1 , direktorinya adalah /shop/item/ . Browser Anda kemudian akan meminta /shop/item/static/pics/gamma.png .
Karena URL Anda cocok dengan yang pertama, Anda harus menyimpannya sebagai URL absolut (dengan /) di depan ) sehingga browser akan membuat permintaan yang benar.
Pada catatan semi-terkait, Anda harus menggunakan url_for bila memungkinkan.
url_for('static', filename='css/home.css')