我需要在我的应用程序中设置到多个数据库的多个连接,一个用于开发,一个用于测试,另一个用于生产。我在堆栈溢出上发现了一些提示,可以通过url获得并传递许多不同的设置,所以我在我的应用程序上对其进行了改进,但我意识到,当我尝试运行不起作用的迁移时,因为没有url可传递,还有其他方法吗?或者你是否打算管理与今天不同的应用程序模式?这也可以将调试定义为false (如果生产或测试)和true (如果开发)。
发布于 2018-01-23 18:09:02
我做了一些类似的事情,在我的path.php中,我将APP_MODE变量定义为' development‘,然后在我的app.php中创建一个case选项,如果开发这个数据库,应用程序将具有这种行为,如果’测试‘这个变量数据库,而这个又一个beahviour,如果’生产‘,那么另一个。这有助于我为每个APP_MODE创建多个分支,然后当我需要发送到测试或生产时,我只需进行合并,然后发送到jenkins部署它。
发布于 2017-11-27 19:51:27
检查开发计算机的主机名是什么。
在linux或Windows上:
hostname将您的app/config/app.default.php复制到一个具有该主机名的文件,而不是单词default。
编辑app/Console/Installer.php文件可以按以下方式更改createAppConfig函数:
public static function createAppConfig($dir, $io)
{
$appConfig = $dir . '/config/app.php';
$defaultConfigPath = $dir . '/config/app.default.php';
$hostnameConfigPath = $dir . '/config/app.' . gethostname() . '.php';
$defaultConfig = file_exists($hostnameConfigPath) ? $hostnameConfigPath : $defaultConfigPath;
if (!file_exists($appConfig)) {
copy($defaultConfig, $appConfig);
$io->write('Created `config/app.php` file');
}
}现在,当您在项目上运行composer install时,它将使用app.default.php配置或与当前计算机主机名匹配的其他配置。
这会将所有配置设置耦合到环境或默认环境中。这可能会解决一些问题,但是如果您想在开发工作站上切换数据库的话。手动编辑app.php文件就更容易了。如果你要做比这更复杂的事。
https://stackoverflow.com/questions/47477974
复制相似问题