Spaces:
Build error
Build error
| from streamlit.report_thread import get_report_ctx | |
| import streamlit as st | |
| class SessionState(object): | |
| def __init__(self, **kwargs): | |
| """A new SessionState object. | |
| Parameters | |
| ---------- | |
| **kwargs : any | |
| Default values for the session state. | |
| Example | |
| ------- | |
| >>> session_state = SessionState(user_name='', favorite_color='black') | |
| >>> session_state.user_name = 'Mary' | |
| '' | |
| >>> session_state.favorite_color | |
| 'black' | |
| """ | |
| for key, val in kwargs.items(): | |
| setattr(self, key, val) | |
| def get_session(id, **kwargs): | |
| return SessionState(**kwargs) | |
| def get(**kwargs): | |
| """Gets a SessionState object for the current session. | |
| Creates a new object if necessary. | |
| Parameters | |
| ---------- | |
| **kwargs : any | |
| Default values you want to add to the session state, if we're creating a | |
| new one. | |
| Example | |
| ------- | |
| >>> session_state = get(user_name='', favorite_color='black') | |
| >>> session_state.user_name | |
| '' | |
| >>> session_state.user_name = 'Mary' | |
| >>> session_state.favorite_color | |
| 'black' | |
| Since you set user_name above, next time your script runs this will be the | |
| result: | |
| >>> session_state = get(user_name='', favorite_color='black') | |
| >>> session_state.user_name | |
| 'Mary' | |
| """ | |
| ctx = get_report_ctx() | |
| id = ctx.session_id | |
| return get_session(id, **kwargs) |