When the user saves in the designer, the dashboard is sent to the server, where the onSaveReport event decides how to store it.

Persist the template in the event.
def saveReport(args: StiReportEventArgs):
    filePath = os.path.normpath(os.getcwd() +
        url_for('static', filename='reports/' + args.fileName))
    with open(filePath, mode='w', encoding='utf-8') as file:
        file.write(json.dumps(args.report, indent=4))
    return f'The dashboard was saved to {args.fileName}.'

designer.onSaveReport += saveReport

How it works. The designer round-trips the dashboard through the Python event, so user edits are stored wherever your app chooses.

By using this website, you agree to the use of cookies for analytics and personalized content. Cookies store useful information on your computer to help us improve efficiency and usability. For more information, please read the privacy policy and cookie policy.