Как я могу динамически инстанцировать несколько приложений через django plotly dash?

Я использую https://django-plotly-dash.readthedocs.io/en/latest/index.html для создания приложения dash.

Я хочу динамически создавать новое приложение при изменении символа. Я думаю, что это создаст новую запись в таблице django_plotly_dash_statelessapp. Как я могу этого добиться?

Пример:

@app.callback(
    Output("example-graph", "figure"),
    [Input("input-element-id", "value")]
)
def update_figure(input_value, session_state=None, **kwargs):
    symbol = session_state["symbol"]  # Each unique symbol creates a different app instance
    new_figure = {
        "data": [
            {"x": [1, 2, 3], "y": [input_value, input_value + 1, input_value + 2], "type": "bar"}
        ],
        "layout": {"title": f"Updated Chart for {symbol}"}
    }
    return new_figure

Вызов на мой взгляд:

class SomeDetailView(DetailView):
    model = SomeModel 
    context_object_name = "detail"

    def get_context_data(self, **kwargs):
        context = super().get_context_data(**kwargs)
        
        # Access the current session and add `symbol` to it
        session = self.request.session
        django_plotly_dash_objs = session.get("django_plotly_dash", {})
        
        django_plotly_dash_objs["symbol"] = context["detail"].symbol
        
        session["django_plotly_dash"] = django_plotly_dash_objs
        
        return context
Вернуться на верх