CodeIgniter 4 - .env 文件存在多个数据库问题



我正在使用CodeIgniter 4.0.3。我已经通过以下方式使用composer安装了它:

composer create-project codeigniter4/framework

作曲家项目创建完成后出现一个错误(Script bash admin/setup.sh handling the post-update-cmd event returned with error code 127---在 Windows 10 上运行(,但通过编辑composer.json并删除bash admin/setup.sh指令快速解决了它

我已经成功地跟进了本教程,之后,我决定进行一些更改,使其更类似于我的 Web 应用程序要求,例如添加多个数据库。

从文档(这里和这里(开始,我读到我必须修改我的.env文件。所以,这是原版

# ORIGINAL .env
database.default.hostname = localhost
database.default.database = ci4
database.default.username = root
database.default.password =
database.default.DBDriver = MySQLi

我想做一些类似的事情:

# MODIFIED .env
database.primary.hostname = localhost
database.primary.database = ci4primary
database.primary.username = root
database.primary.password =
database.primary.DBDriver = MySQLi
database.secondary.hostname = localhost
database.secondary.database = ci4secondary
database.secondary.username = root
database.secondary.password =
database.secondary.DBDriver = MySQLi

接下来,在我的模型中,我调用了数据库以通过以下方式进行连接:

use ConfigDatabase;
...
$dbPrimary   = Database::connect('primary');
$dbSecondary = Database::connect('secondary');

当我运行该应用程序时,出现以下错误:

InvalidArgumentException primary is not a valid database connection group

我不知道还能做什么,我尝试了对.env文件的各种编辑,尝试调试Config类(我认为它不会加载primarysecondary子项---我也不知道如何更改类以从我的环境文件中读取它们(。

快速检查表:

  • env文件已移至.env
  • ci4primaryci4secondary数据库都存在,并且具有包含数据的适当表
  • 数据库凭据正常
  • CI 环境设置为开发

.env文件中的数据库连接组也必须存在于app/Config/Database.php文件中。默认情况下,仅定义defaulttests连接组。

相关内容

  • 没有找到相关文章

最新更新