更改 Flask/Dash 中的图标

Iva*_*van 8 flask plotly-dash

尝试favicon加载我遵循了互联网的建议:

server = Flask(__name__, static_folder='static')
app =  dash.Dash(external_stylesheets=external_stylesheets, server=server)

app.css.config.serve_locally = False
app.scripts.config.serve_locally = True

@server.route('/favicon.ico')
def favicon():
    print('Server root path', server.root_path)
    return send_from_directory(os.path.join(server.root_path, 'static'),
                               'dice.ico', mimetype='image/vnd.microsoft.icon')

   ...
   app.run_server(debug=True)
Run Code Online (Sandbox Code Playgroud)

如果我浏览到favicon,我会看到它:

http://www.example.com/favicon.ico
Run Code Online (Sandbox Code Playgroud)

但是,当我浏览到

http://www.example.com
Run Code Online (Sandbox Code Playgroud)

我看到dash带有自己描述的默认图标。我如何确保我自己的favicon负载正确?

小智 15

要简单地更改favicon您需要做的所有事情,就是在assets您的 app.py 旁边创建一个名为的文件夹,并将您的内容favicon.ico放在该文件夹中,它将完美运行。

应用程序.py:

import flask
import dash
import dash_html_components as html

server = flask.Flask(__name__)

@server.route('/')
def index():
    return 'Hello Flask app'

app = dash.Dash(
    __name__,
    server=server,
    routes_pathname_prefix='/dash/'
)

app.layout = html.Div("My Dash app")

if __name__ == '__main__':
    app.run_server(debug=True)  

Run Code Online (Sandbox Code Playgroud)

这是更多信息的文档链接:Dash docs