feat(root):add mysql
This commit is contained in:
@@ -0,0 +1,25 @@
|
||||
"""
|
||||
تنظیمات اتصال MySQL (فقط خواندنی).
|
||||
از بخش جداگانه mysql در config.yml (همسطح با database) استفاده میکند.
|
||||
"""
|
||||
from config import conf
|
||||
|
||||
|
||||
def get_mysql_config(connection_name: str = None):
|
||||
"""
|
||||
بر اساس محیط (dev/production) تنظیمات MySQL را برمیگرداند.
|
||||
Returns: dict با کلیدهای host, port, user, password, db
|
||||
"""
|
||||
if not conf.mysql:
|
||||
raise ValueError("تنظیمات mysql در config.yml یافت نشد.")
|
||||
env = "production" if conf.server.is_prod else "dev"
|
||||
mode = getattr(conf.mysql, env, None) or getattr(conf.mysql, "dev", None)
|
||||
if not mode:
|
||||
raise ValueError(f"تنظیمات mysql.{env} در config.yml یافت نشد.")
|
||||
return {
|
||||
"host": getattr(mode, "host", "127.0.0.1"),
|
||||
"port": int(getattr(mode, "port", 3306)),
|
||||
"user": getattr(mode, "user", ""),
|
||||
"password": getattr(mode, "password", ""),
|
||||
"db": getattr(mode, "db", ""),
|
||||
}
|
||||
Reference in New Issue
Block a user