EGYADMIN commited on
Commit
6a07b65
·
verified ·
1 Parent(s): 2289ced

Create config_manager.py

Browse files
Files changed (1) hide show
  1. config_manager.py +37 -0
config_manager.py ADDED
@@ -0,0 +1,37 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ """
2
+ مدير تكوين تطبيق Streamlit
3
+ يستخدم لمنع استدعاء set_page_config() أكثر من مرة في التطبيق
4
+ """
5
+
6
+ class ConfigManager:
7
+ """مدير تكوين التطبيق لمنع استدعاء set_page_config() أكثر من مرة"""
8
+
9
+ _instance = None
10
+ _page_config_set = False
11
+
12
+ def __new__(cls):
13
+ if cls._instance is None:
14
+ cls._instance = super(ConfigManager, cls).__new__(cls)
15
+ return cls._instance
16
+
17
+ def set_page_config_if_needed(self, **kwargs):
18
+ """
19
+ تعيين تكوين الصفحة إذا لم يتم تعيينه بالفعل
20
+
21
+ المعلمات:
22
+ **kwargs: معلمات لدالة st.set_page_config()
23
+
24
+ العوائد:
25
+ bool: True إذا تم تعيين التكوين، False إذا كان التكوين معينًا بالفعل
26
+ """
27
+ import streamlit as st
28
+
29
+ if not ConfigManager._page_config_set:
30
+ st.set_page_config(**kwargs)
31
+ ConfigManager._page_config_set = True
32
+ return True
33
+ return False
34
+
35
+ def is_page_config_set(self):
36
+ """التحقق مما إذا كان تكوين الصفحة قد تم تعيينه بالفعل"""
37
+ return ConfigManager._page_config_set