-
Notifications
You must be signed in to change notification settings - Fork 0
DAO (DataAccessObject) - класс, имеющий методы, которые позволяют осуществлять корректный и простой перевод объектов из базы данных в классы, и наоборот.
DAO.columns - константа класса, указывающая какие поля ему надо предоставить в запросе. Например, columns = 'lang_id, submit_id, ...'
DAO.init(self, connector) - конструктор, запоминающий self.connector.
DAO.connector - указатель на коннектор с установленным соединением к базе данных.
DAO.load(row) - статический метод. Получает один запрос из базы данных. Возвращает созданный объект класса.
DAO.deep_load(self, row) - получает один запрос из базы данных. Дополняет load при помощи вызовов других DAO и возвращает объект класса. При обращении к базе данных самостоятельно создаёт курсоры, используя self.connector.
Ниже - params, перечисленные через запятую уникальные параметры объекта, определяющие его единственным образом.
DAO.define(self, params...) - определяет объект в базе данных. Если его нет, инициирует создание. Возвращает id.
DAO.lookup(self, params...) - определяет id объекта в базе данных. Если его нет, возвращает None.
DAO.create(self, params...) - создаёт объект в базе данных. Возвращает id.
DAO.update(self, ref, update_def) - обновляет параметры объекта с id = ref, которые присутствуют в словаре update_def.