Flask renderizando a versão anterior do CSS [duplicado]

Aug 27 2020

O aplicativo Flask está renderizando uma versão anterior do meu arquivo css (salvei e fiz alterações, mas quando inspeciono a página, o arquivo css mostrado é uma versão anterior). Talvez a versão anterior do arquivo css esteja de alguma forma presa no cache? Tentei reiniciar o navegador, sem sorte.

Aqui está o código:

Parte do arquivo app.py (a parte onde estou renderizando o arquivo HTML):

from flask import Flask,render_template,url_for,request
from twilio.rest import Client
app = Flask(__name__, template_folder='templates')
app.static_folder = 'static'
import numpy as np
import matplotlib.pyplot as plt
import pandas as pd
pd.core.common.is_list_like = pd.api.types.is_list_like
import pandas_datareader as pdr
#import yahoo finance api fixer
import fix_yahoo_finance as fyf
from pandas_datareader import data as pdr
from datetime import datetime, timedelta

@app.route('/')
def home():
    return render_template('index.html')

if __name__ == "__main__":
    app.run(debug=True)

index.html:

<!DOCTYPE html>
    <html>
        <head>
            <link rel="stylesheet" type="text/css" href="{{ url_for('static', filename='styles.css') }}" />
        </head>
        <body>
            <h1>Ticker Predictor</h1>
            <h2>Using Machine Learning to Predict Tomorrow's Stock Prices</h2>
            <br>
            <h3>Simply enter a valid stock ticker below and hit the predict button to receive a text message of tomorrow's predicted opening price of that stock within around 10 minutes!</h3>
            <!-- Main Input For Receiving Query to our ML -->
            <form action="{{ url_for('predict')}}"method="post">
                <input type="text" placeholder="Input Stock Ticker Here" required="required" />
                <button type="submit">Predict</button>
            </form>
            {{ prediction_text }}
        </body>
    </html>

E aqui está a estrutura do arquivo:

TickerPredictor
    |--static/
        |--styles.css
    |--templates/
        |--index.html
    |--app.py

Qualquer ajuda seria muito apreciada! Obrigado!

Respostas

2 rmb Aug 28 2020 at 03:59

você app.pydeveria ser algo assim

from flask import Flask,render_template

app = Flask(__name__)

@app.route('/')
def home():
    return render_template('index.html')

if __name__ == "__main__":
    DEBUG = True
    HOST = '0.0.0.0'
    app.run(debug=DEBUG, host=HOST)

Em seu app.pyarquivo, você não mencionou o host. Atualize seu app.pyarquivo e ele deve funcionar.

jalunceford Aug 28 2020 at 05:01

Graças à ajuda de Rahul e stackoverflow.com/questions/21714653/flask-css-not-updating, acabei de realizar uma recarga forçada em meu navegador para limpar o cache (CMD + SHIFT + R). Em outras palavras, a versão anterior do arquivo css estava sendo armazenada no cache do navegador, limpar o cache elimina a versão anterior do arquivo css e a versão mais recente é exibida (que é obviamente o que eu quero). Obrigado a todos!