Изменения: исправлена проблема с зависанием и необходимостью принудительного завершения работы программы, некоторый функционал внесён в разработку с сообщением 'функционал недоступен', исправлена ошибка бургер-меню (теперь нажатие на определённую кнопку вызывает определённую функцию), функция feature_in_development вынесена в utils.py.
This commit is contained in:
parent
e01f43dc35
commit
9b9b459d8f
26 changed files with 1054 additions and 113 deletions
|
|
@ -9,16 +9,42 @@ engine = create_engine(DATABASE_URL, echo=True)
|
|||
|
||||
# Создание фабрики сессий
|
||||
Session = sessionmaker(bind=engine)
|
||||
session = Session()
|
||||
|
||||
def init_db():
|
||||
"""Инициализация базы данных: создание файла и таблиц."""
|
||||
if not os.path.exists("database/DogAcademy.db"):
|
||||
print("База данных не найдена. Создаём новую...")
|
||||
Base.metadata.create_all(bind=engine)
|
||||
# Переменная для хранения текущей сессии
|
||||
current_session = None
|
||||
|
||||
|
||||
def init_db(refresh=False):
|
||||
"""
|
||||
Инициализация базы данных: создание файла и таблиц.
|
||||
Если `refresh` равно True, удаляет и пересоздаёт таблицы.
|
||||
"""
|
||||
global current_session
|
||||
if not os.path.exists("database/DogAcademy.db") or refresh:
|
||||
if refresh:
|
||||
print("Обновление базы данных: удаление старых таблиц...")
|
||||
Base.metadata.drop_all(bind=engine) # Удаляем все таблицы
|
||||
|
||||
print("Создание базы данных и таблиц...")
|
||||
Base.metadata.create_all(bind=engine) # Создаём таблицы заново
|
||||
else:
|
||||
print("База данных уже существует.")
|
||||
print("База данных уже существует. Обновление не требуется.")
|
||||
|
||||
# Инициализация сессии при запуске
|
||||
current_session = get_session()
|
||||
|
||||
|
||||
def get_session():
|
||||
"""Возвращает сессию для работы с базой данных."""
|
||||
return Session()
|
||||
return Session()
|
||||
|
||||
|
||||
def close_sessions():
|
||||
"""Закрытие всех сессий перед выходом из программы."""
|
||||
global current_session
|
||||
if current_session is not None:
|
||||
print("Закрытие сессии...")
|
||||
current_session.close() # Закрываем текущую сессию базы данных
|
||||
current_session = None
|
||||
else:
|
||||
print("Нет активной сессии для закрытия.")
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue