Open jsulopzs opened 6 months ago
@jsulopzs if you have a lot of data, then one strategy is to manage the data within Django (eg as part of the ORM, or leveraging a cache) and then accessing it during (extended) callbacks.
Thanks for the response @GibbsConsulting. I'll take the caching approach using Redis and call the id_project
from the user's dropdown selection.
Although I see a caveat:
To pass the id_project
options in the dropdown, I need only to display the ones associated with the logged-in username
.
I am passing the username through initial_arguments
, but I wouldn't say it's a safe approach since any user can inspect the HTML
and change the username
value to access anyone's project.
Would the view decorator @login_required
prevent unauthorized access in the case of using initial_arguments
?
see: https://django-plotly-dash.readthedocs.io/en/latest/access_control.html
Goal
I am trying to render a Dash app through a template that takes input from the view after calling the URL (that's how Django works).
The main problem I face is how to pass data through this logic.
Context
id_project
dashboard when visitinghttps://website.com/dashapp/<id_project>
Implementation
I am considering two strategies:
data.csv
from an s3 paths3://domain.com/projects/<id_project>
With option 1, I am stuck on the concept of passing the data. All I have found online concerns the state, but I don't want to use the state because the full dataset of the id_project (~20MB) should be available during the session.
With option 2, I am stuck on passing the id_project from the view to the template captured within the Dash app.
Beyond solving these doubts, any new approaches are welcomed
Thanks in advance for the help!