arrilot / bitrix-models

MIT License
120 stars 37 forks source link

Детальная настройка подключения к БД #33

Closed maltf0 closed 4 years ago

maltf0 commented 5 years ago

Здравствуйте!

Можно-ли, не модифицируя bitrix-models, организовать работу с несколькими БД? Например, добавить внешнюю БД postgree.

Стандартно в Битриксе это решается добавлением подключения в файле /bitrix/.settings.php

Второй вопрос: можно-ли в bitrix-models добавлять options для подключения? Пример из Laravel: app/config/database.php

return array(
    'connections' => array(
        'mysql' => array(
            'options'   => array(
                PDO::ATTR_CASE => PDO::CASE_UPPER,
            ),
        ),
     )
)

Это позволит объявлять в моделях названия колонок таблиц в lower_case.

arrilot commented 5 years ago

Привет, Eloquent конфигурируется по данным дефолтного подключения к БД из битриксового конфига https://github.com/arrilot/bitrix-models/blob/master/src/ServiceProvider.php#L84 Теоретически я вижу что это можно доработать - добавить проверку на наличие в битриксовом конфигемассива bitrix-models.illuminate-database. Внутри этого массива ключи default и connection в формате как здесь https://github.com/laravel/laravel/blob/master/config/database.php Если этого конфига не задано, то использовать текущую логику для обратной совместимости и удобства в простых кейсах.

Готов смержить подобный PR если кто-то заинтересован в том чтобы его сделать.

maltf0 commented 4 years ago

Наконец-то руки дошли https://github.com/arrilot/bitrix-models/pull/34