File size: 1,229 Bytes
5a66745 |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 |
#!/usr/bin/env python
# -*- coding: utf-8 -*-
"""
وحدة الاتصال بقاعدة البيانات
"""
import os
import sys
import psycopg2
from dotenv import load_dotenv
# إضافة مسار النظام للوصول للملفات المشتركة
sys.path.append(os.path.abspath(os.path.join(os.path.dirname(__file__), "..")))
# تحميل متغيرات البيئة
load_dotenv()
def get_connection():
"""
إنشاء اتصال بقاعدة البيانات
الإرجاع:
اتصال بقاعدة البيانات
"""
try:
# محاولة الاتصال بقاعدة البيانات
conn = psycopg2.connect(
dbname=os.getenv("PGDATABASE"),
user=os.getenv("PGUSER"),
password=os.getenv("PGPASSWORD"),
host=os.getenv("PGHOST"),
port=os.getenv("PGPORT")
)
return conn
except Exception as e:
print(f"خطأ في الاتصال بقاعدة البيانات: {e}")
# إذا فشل الاتصال، استخدم اتصال قاعدة بيانات وهمي
from utils.helpers import get_connection as get_mock_connection
return get_mock_connection() |