Flask не подтягиваюися файлы
Запускаю проект на фласке, но не подтягиваются ни стили, ни изображения, какие бы пути не ставил.
путь к файлу: D:\code\Engel’s shop\styles\style.css
python:
from flask import Flask, render_template, request, redirect, send_from_directory
import os
import sqlite3
import uuid
app = Flask(__name__)
conn = sqlite3.connect('your_database.db')
cursor = conn.cursor()
@app.route('/')
def index():
conn = sqlite3.connect('your_database.db')
cursor = conn.cursor()
cursor.execute('SELECT * FROM products')
products = cursor.fetchall()
conn.close()
return render_template('index.html', products=products)
if __name__ == '__main__':
app.run(debug=True)
html:
<link rel="stylesheet" type="text/css" href="/styles/style.css">
Вот такие ошибки пишутся в логах, просто не видит файлы:
127.0.0.1 - - [18/Jan/2024 21:59:24]
"GET /styles/style.css HTTP/1.1" 404
- 127.0.0.1 - - [18/Jan/2024 21:59:24]
"GET /img/logo.JPG HTTP/1.1" 404 -
127.0.0.1 - - [18/Jan/2024 21:59:24]
"GET /img/tg-logo.png HTTP/1.1" 404 -
127.0.0.1 - - [18/Jan/2024 21:59:24]
"GET /img/1694176632.avif HTTP/1.1" 404 -
Ответы (2 шт):
Автор решения: Александр
→ Ссылка
Flask ищет стили вроде как по этому пути обязательно /static/ а далее хоть сколько вложенных папок '/static/styles/style.css'
html
<link rel="stylesheet" href='/static/styles/style.css' />
Автор решения: MoneyKeeper
→ Ссылка
Для flask надо делать так. У него свои правила.
<link
type="text/css"
href="{{ url_for('static', filename='styles/style.css') }}"
rel="stylesheet"/>