我正在尝试通过django-plotly-dash documentation中最简单的仪表板示例进行研究,但是我一直在上面获取ValueError。
对于以下代码,假设django项目名称为 django_project ,而django应用程序名称为 dashboard 。
我在 django_project / urls.py 上的ROOT_URLCONF具有以下相关代码:
import dashboard.dash_app
from dashboard.views import test_view
urlpatterns = [
...
path('dashboard/', test_view, name='test_view'),
path('django_plotly_dash/', include('django_plotly_dash.urls')),
]
位于 dashboard / views.py 的我的仪表板应用程序视图如下:
from django.shortcuts import render
def test_view(request):
return render(request, 'dashboard/main.html')
main.html 模板如下:
from django.shortcuts import render
def test_view(request):
return render(request, 'dashboard/main.html')
{% load plotly_dash %}
{% plotly_app name="SimpleExample" %}
最后,在名为 dashboard / dash_app.py 的文件中创建DjangoDash应用实例。如前所述,该模块如上所述导入django_project / urls.py中。代码如下:
import dash
import dash_core_components as dcc
import dash_html_components as html
from django_plotly_dash import DjangoDash
app = DjangoDash('SimpleExample')
app.layout = ...
@app.callback(...)
def callback_color(...):
...
在调试过程中,我仅有的其他看似相关的信息是 base_pathname 是'/ django_plotly_dash / app / SimpleExample /'
还有其他想法吗?
答案 0 :(得分:1)
这是由2019年6月20日对Dash 1.0版的最新更新引起的。 Dash类现在检查以确保server
是布尔值还是Flask的实例。由于django plotly_dash使用它自己的PseudoFlask对象,因此它无法通过此检查,并且与Dash 1.0不兼容,因此需要更新以与当前Dash版本一起使用。
答案 1 :(得分:0)
我今天遇到了同样的问题。使用较旧版本的Dash(0.43.0)为我解决了该问题。