Как организовать работу с базой данных в библиотеке? Привет всем.
Есть кастомная библиотека, которую я делал, все её методы взаимодействуют с базой данных, но конфиги для подключения к бд и таблицы находятся в отдельном файле, как будет правильнее организовать работу с бд, что бы избавиться от конфиг файла, но не утомлять пользователя вводом этих данных в конструктор класса?

21 Авг 2019 в 07:06
160 +1
1
Ответы
1

Для того чтобы избавиться от конфигурационного файла и не утомлять пользователя вводом этих данных в конструктор класса, вы можете использовать внедрение зависимостей.

Создайте класс, который будет отвечать за работу с базой данных, например, класс Database. В конструктор этого класса передавайте все необходимые данные для подключения к БД (например, хост, имя пользователя, пароль, название базы данных).

Затем в конструкторе вашей кастомной библиотеки создайте экземпляр класса Database и используйте его для работы с базой данных. Таким образом, конфигурационные данные будут передаваться только один раз при создании объекта Database, и не нужно будет каждый раз передавать их при создании объектов вашей библиотеки.

Пример:

class Database:
def __init__(self, host, username, password, database):
# код для подключения к базе данных
class CustomLibrary:
def __init__(self, db):
self.db = db
def method1(self):
# использование self.db для работы с базой данных
def method2(self):
# использование self.db для работы с базой данных
db = Database(host='localhost', username='user', password='password', database='library_db')
library = CustomLibrary(db)

Таким образом, вы сможете организовать работу с базой данных в вашей библиотеке, избавившись от конфигурационного файла и не утомляя пользователя вводом данных в конструктор класса каждый раз.

20 Апр в 13:07
Не можешь разобраться в этой теме?
Обратись за помощью к экспертам
Название заказа не должно быть пустым
Введите email
Бесплатные доработки
Гарантированные бесплатные доработки
Быстрое выполнение
Быстрое выполнение от 2 часов
Проверка работы
Проверка работы на плагиат
Интересные статьи из справочника
Поможем написать учебную работу
Название заказа не должно быть пустым
Введите email
Доверьте свою работу экспертам
Разместите заказ
Наша система отправит ваш заказ на оценку 92 493 авторам
Первые отклики появятся уже в течение 10 минут
Прямой эфир