Как реализовать работу с двумя базами данных?

Правила раздела: faq.php?mode=okay
Модератор: Модераторы

ASTRO
ASTRO
Репутация: 0
Сообщения: 3
Зарегистрирован: 28.10.2017
С нами: 6 лет 5 месяцев

Сообщение #1 ASTRO » 28.10.2017, 19:22

Добрый день. Возникла необходимость работы OkayCMS с двумя базами данных. Смотрел API Database, но там при обращении к этому АПИ конструктор сразу подключает основную базу, если она ещё не подключена. Ломаю голову весь вечер, как это можно реализовать. Может быть какой-то промежуточный метод changedb() создать? Прошу помощи у опытных программистов, потому что я хочу чтобы код был правильным. Заранее спасибо огромное!

korshunov
korshunov
Репутация: 148
Сообщения: 1862
Зарегистрирован: 03.12.2015
С нами: 8 лет 4 месяца
Skype

Сообщение #2 korshunov » 29.10.2017, 06:14

Есть разные способы, многое зависит от от того, как именно хотите работать и с какими целями.
Простейший вариант - создать копию Database.php с нужными настройками, и применять наряду со стандартным способом
$this->db->query($query) также эту копию через $this->db2->query($query).

ASTRO
ASTRO
Репутация: 0
Сообщения: 3
Зарегистрирован: 28.10.2017
С нами: 6 лет 5 месяцев

Сообщение #3 ASTRO » 29.10.2017, 08:25

korshunov писал(а):Есть разные способы, многое зависит от от того, как именно хотите работать и с какими целями.
Простейший вариант - создать копию Database.php с нужными настройками, и применять наряду со стандартным способом
$this->db->query($query) также эту копию через $this->db2->query($query).
Я так и сделал, но думаю, что возможно есть другой способ, без лишних дубликатов классов..

korshunov
korshunov
Репутация: 148
Сообщения: 1862
Зарегистрирован: 03.12.2015
С нами: 8 лет 4 месяца
Skype

Сообщение #4 korshunov » 29.10.2017, 09:54

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


Название раздела: Вопросы по работе с OkayCMS
Правила раздела: faq.php?mode=okay

Быстрый ответ


Введите код в точности так, как вы его видите. Регистр символов не имеет значения.
Код подтверждения

   

Вернуться в «Вопросы по работе с OkayCMS»

Кто сейчас на форуме (по активности за 5 минут)

Сейчас этот раздел просматривают: 109 гостей