定制 bilhackmac/databases-manager-module 二次开发

按需修改功能、优化性能、对接业务系统,提供一站式技术支持

邮箱:yvsm@zunyunkeji.com | QQ:316430983 | 微信:yvsm316

bilhackmac/databases-manager-module

最新稳定版本:V1.4.0

Composer 安装命令:

composer require bilhackmac/databases-manager-module

包简介

Allows managing multiple connections to databases

README 文档

README

Allows managing multiple connections to databases for other modules and provides commands to parse schema.xml files with multiple definitions.

Installation

Manually…

Copy the module into <thelia_root>/local/modules/ directory and be sure that the name of the module is DatabasesManager.

… or with Composer

Add it in your main thelia composer.json file.

composer require bilhackmac/databases-manager-module:~1.0

Then

Activate it in your thelia administration panel.

Usage

1. schema.xml

Unmodified schema.xml files continue to work as expected but you can now add a new root databases node instead of database.

<databases>
    <database defaultIdMethod="native" name="thelia" namespace="Module\Namespace\Model">
        <table name="theliaTable">
            <column type="integer" name="id" required="true" primaryKey="true" autoIncrement="true"/>
            <column type="integer" name="field" required="true"/>
        </table>

        <external-schema filename="local/config/schema.xml" referenceOnly="true" />
    </database>

    <database defaultIdMethod="native" name="anotherDB" namespace="Module\Namespace\Model">
        <!-- Note database name for later -->
        <table name="externalTable">
            <column type="integer" name="id" required="true" primaryKey="true" autoIncrement="true"/>
            <column type="integer" name="field" required="true"/>
        </table>
    </database>

    <!-- Add any database node you need --->
</databases>

2. Commands

Databases manager override two Thelia 2 commands and adds one.

php Thelia module:generate:model <moduleName>

and

php Thelia module:generate:sql <moduleName>

always work as expected but now handles databases and multiples database nodes in schema.xml files. These commands also add an empty database configuration for every unkown database name in configuration file (e.g. : anotherDB in previous schema.xml).

php Thelia module:schema:recovery <moduleName>

can recover schema.xml if unexpected exit happens during any of two previous command (e.g. : Ctrl + C).

3. Configuration

Access to databases configuration by clicking on Configure from backoffice module manager. You can now add/edit/delete databases configurations.
But be careful, configuration labels have to be the same as schema.xml database nodes name, otherwise, models will not be able to find connection to their databases.

You can define database configuration for your current environment (prod by default and dev when accessing with index_dev.php). Environment configuration with the same label as shared configuration overwrite it.
It's can be useful if you don't want that dev environment access same external database as prod environment.

4. Overwite Thelia default configuration

This feature seems to work, but it's not tested.
If you want connect to another Thelia database than the default one, labeled it thelia. By this way, you can have a production database and a development database.

统计信息

  • 总下载量: 672
  • 月度下载量: 0
  • 日度下载量: 0
  • 收藏数: 1
  • 点击次数: 3
  • 依赖项目数: 0
  • 推荐数: 0

GitHub 信息

  • Stars: 1
  • Watchers: 7
  • Forks: 2
  • 开发语言: PHP

其他信息

  • 授权协议: LGPL-3.0
  • 更新时间: 2015-03-23

承接程序开发

PHP开发

VUE

Vue开发

前端开发

小程序开发

公众号开发

系统定制

数据库设计

云部署

网站建设

安全加固