【问题标题】:Flask rendering previous version of CSS [duplicate]烧瓶渲染以前版本的 CSS [重复]
【发布时间】:2020-12-16 23:55:39
【问题描述】:

Flask 应用程序正在呈现我的 css 文件的以前版本(我已保存并进行了更改,但是当我检查页面时,显示的 css 文件是以前的版本)。也许以前版本的 css 文件不知何故卡在缓存中?我尝试重新启动浏览器,没有运气。

代码如下:

app.py 文件的一部分(我正在渲染 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>

这是文件结构:

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

任何帮助将不胜感激!谢谢!

【问题讨论】:

  • 请将 HTML 缩减为一个显示问题的小文件,然后发布。您的问题很可能出在您的 HTML 中。
  • @DaveW.Smith,我刚刚将整个 index.html 添加到描述中
  • 我更新了描述以及新的更新...

标签: python html css flask


【解决方案1】:

感谢 Rahul 和 stackoverflow.com/questions/21714653/flask-css-not-updating 的帮助,我刚刚在浏览器中执行了硬重新加载以清除缓存(CMD + SHIFT + R)。换句话说,以前版本的 css 文件被存储在浏览器缓存中,清除缓存会删除以前的 css 文件版本,然后显示最新版本(这显然是我想要的)。谢谢大家!

【讨论】:

    【解决方案2】:

    你的app.py应该是这样的

    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)
    

    在您的app.py 文件中,您没有提到host。更新您的 app.py 文件,它应该可以工作。

    【讨论】:

    • 我在描述中贴了html文件,我没有那个吗?我想我知道,但我可能是错的
    • 抱歉,由于某种原因,我在 html 上的缩进搞砸了
    • 打开localhost 会得到什么?当您运行app.py 时,您还可以发布您在控制台中获得的内容吗?
    • 问题也发生了变化。我再次更新了描述。找到 html 没有问题(没有 404 未找到错误),但是在浏览器中提供了以前版本的 css 文件(我检查了页面,并且 css 文件是以前的版本,即使我已经保存了更改自上一版本以来的文件中)。我会按照您的要求将控制台输出放在描述中
    • @jalunceford 是的,这是缓存问题。但仅用于开发,可以在 Devtools -> Network -> Disable caching 中关闭缓存。这仅在开发工具打开时才有效。
    猜你喜欢
    • 2018-03-25
    • 1970-01-01
    • 1970-01-01
    • 2020-10-18
    • 1970-01-01
    • 2023-04-07
    • 2017-09-03
    • 2021-03-28
    • 1970-01-01
    相关资源
    最近更新 更多