这是我在我的代码中实现它的方式。我已经单独尝试了每种方法,并将它们全部用作未注释的代码行。无论我使用的方法组合如何,我仍然必须在仪表板加载后手动打开抑制错误。
app = dash.Dash(__name__, external_stylesheets=external_stylesheets)
app.title = 'TEST'
app.config['suppress_callback_exceptions'] = True
app.config.suppress_callback_exceptions = True
我也试过(没有任何运气):
app = dash.Dash(__name__, external_stylesheets=external_stylesheets,
suppress_callback_exceptions = True)
和
import sys
class HaltCallback(Exception):
pass
@app.server.errorhandler(HaltCallback)
def handle_error(error):
print(error, file=sys.stderr)
return ('', 204)
还有其他可能的方法可以尝试抑制回调异常吗?我正在为我的老板制作一个仪表板,所以我真的很想在加载它时自动进行错误抑制。
原文由 Nbishop 发布,翻译遵循 CC BY-SA 4.0 许可协议
对于任何未来的观众:这个错误在问题发布后的一段时间内得到修复。
最早的答案 确实在 技术上 修复了它,但它也会在整个过程中禁用真正的回调错误(在开始时不会触发)。如果您正在寻找放置
suppress_callback_exceptions=True
的位置,请将其放入应用程序声明本身,例如:app = dash.Dash( ... , suppress_callback_exceptions=True)
。