Я создаю веб-приложение с Django и Da sh и отличным пакетом django_plotly_da sh. Все работает без сбоев, за исключением случаев, когда я пытаюсь включить Django bootstrap компонентов. Добавление даже одного компонента Django bootstrap приводит к абсолютно пустой странице - даже исчезают html -dvs из django_plotly_da sh. Кроме того, опция external_stylesheets
, похоже, полностью игнорируется, даже когда add_bootstrap_links=True
.
Это приводит к ожидаемому результату:
import dash_html_components as html
from django_plotly_dash import DjangoDash
import dash_bootstrap_components as dbc
dis = DjangoDash("test_app_dash",
add_bootstrap_links=True)
dis.layout = html.Div(
[
html.H1("THIS WORKS FINE"),
]
)
В то время как это создает полностью пустую страницу (без каких-либо исключений):
import dash_html_components as html
from django_plotly_dash import DjangoDash
import dash_bootstrap_components as dbc
dis = DjangoDash("test_app_dash",
add_bootstrap_links=True)
dis.layout = html.Div(
[
html.H1("THIS WORKS FINE"),
dbc.Alert("THIS DOES NOT WORK", id="base-alert", color="primary"),
]
)
Вот некоторые из ключевых файлы для минимального рабочего примера (см. снимок экрана с полной структурой проекта ):
test_app views.py:
from django.shortcuts import render
from . import test_app_dash
def test(request):
return render(request, "test_app/test.html")
main urls.py:
from django.contrib import admin
from django.urls import path, include
urlpatterns = [
path("", include("test_app.urls")),
path('admin/', admin.site.urls),
path('django_plotly_dash/', include('django_plotly_dash.urls'))
]
test_app urls.py:
from django.urls import path
from . import views as test_views
urlpatterns = [
path("", test_views.test, name = "test")
]
фрагмент из settings.py:
INSTALLED_APPS = [
'django_plotly_dash.apps.DjangoPlotlyDashConfig',
'channels',
...]
...
CHANNEL_LAYERS = {
'default': {
'BACKEND': 'channels_redis.core.RedisChannelLayer',
'CONFIG': {
'hosts': [('127.0.0.1', 6379),],
},
},
}
X_FRAME_OPTIONS = 'SAMEORIGIN'
ASGI_APPLICATION = "test_app.routing.application"
test. html:
{% load plotly_dash %}
{% plotly_app name="test_app_dash" %}
It было бы здорово, если бы кто-то мог пролить свет на это! Я в тупике. Дайте мне знать, если вам нужна дополнительная информация.