小编Dmi*_*try的帖子

Plotly Dash - dcc.Store 回调触发两次

我在使用 Plotly Dash 时遇到问题,组件触发的回调dcc.Store每次都会触发两次。请参阅下面的代码和示例输出代码,该代码基于 Dash 文档中的示例 ( https://dash.plot.ly/dash-core-components/store )。

任何人都可以解释这一点或建议解决方法来防止它吗?

最小工作示例代码:

import dash

import dash_html_components as html
import dash_core_components as dcc
from dash.dependencies import Output, Input, State
from dash.exceptions import PreventUpdate

app = dash.Dash(__name__)

app.layout = html.Div([
    dcc.Store(id='local', storage_type='local'),
    html.Div(html.Button('localStorage', id='local-button')),
    html.Div(0, id='local-clicks'),
])


@app.callback(Output('local', 'data'),
              [Input('local-button', 'n_clicks')],
              [State('local', 'data')])
def on_click(n_clicks, data):
    if n_clicks is None:
        raise PreventUpdate

    app.logger.info(f"Updating data store")

    data = data or {'clicks': 0}

    data['clicks'] = data['clicks'] + 1
    return data


@app.callback(Output('local-clicks', 'children'),
              [Input('local', …
Run Code Online (Sandbox Code Playgroud)

python plotly-dash

5
推荐指数
1
解决办法
2960
查看次数

浏览器中的破折号进度条不显示

我的布局中有类似的东西。

import dash
import dash_html_components as html
import dash_core_components as dcc
import dash_bootstrap_components as dbc


app = dash.Dash()

app.layout = html.Div([

    html.H1('Progress bar'),
    dbc.Progress(id="progress", value=50, striped=True, animated=True)
])

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

我希望在我的仪表板应用程序中显示一个值为 50% 的进度条。但什么也没有出现。知道为什么吗?

python plotly-dash

4
推荐指数
1
解决办法
2668
查看次数

使用 unittest 为 Flask 应用程序编写单元测试

我是单元测试的新手,我正在尝试为我编写的代码编写一个测试,这是一个注释系统,可将注释和一些额外信息保存到数据库中。这是代码:

@app.route("/", methods=["GET", "POST"])
def home():

    if request.method == "POST":
        ip_address = request.remote_addr
        entry_content = request.form.get("content")
        formatted_date = datetime.datetime.today().strftime("%Y-%m-%d/%H:%M")
        app.db.entries.insert({
            "content": entry_content, 
            "date": formatted_date, 
            "IP": ip_address})

    return "GET method called"
Run Code Online (Sandbox Code Playgroud)

我想编写一个测试来检查POST它的一部分,但我不知道如何在POST方法中传递内容并确保一切正常。

你能帮我解决这个问题吗?

unit-testing flask python-3.x python-unittest

0
推荐指数
1
解决办法
8961
查看次数