Flask rendant la version précédente de CSS [duplicate]

Aug 27 2020

L'application Flask rend une version précédente de mon fichier css (j'ai enregistré et apporté des modifications, mais lorsque j'inspecte la page, le fichier css affiché est une version précédente). Peut-être que la version précédente du fichier css est en quelque sorte bloquée dans le cache? J'ai essayé de redémarrer le navigateur, pas de chance.

Voici le code:

Partie du fichier app.py (la partie où je rend le fichier 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>

Et voici la structure du fichier:

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

Toute aide serait très appréciée! Je vous remercie!

Réponses

2 rmb Aug 28 2020 at 03:59

tu app.pydevrais être quelque chose comme ça

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)

Dans votre app.pydossier, vous n'avez pas mentionné le host. Mettez à jour votre app.pyfichier et cela devrait fonctionner.

jalunceford Aug 28 2020 at 05:01

Grâce à l'aide de Rahul et de stackoverflow.com/questions/21714653/flask-css-not-updating, je viens d'effectuer un rechargement dur dans mon navigateur pour vider le cache (CMD + SHIFT + R). En d'autres termes, la version précédente du fichier css était stockée dans le cache du navigateur, vider le cache supprime la version précédente du fichier css et la version la plus récente est alors affichée (ce qui est évidemment ce que je veux). Merci tout le monde!