Database design 使用laravel在多个环境中使用多个数据库
我正在编写的Laravel5.2应用程序遇到了一个架构难题。应用程序连接到生产中的多个数据库服务器;我已经为所有的开发人员建立了流浪环境,我们都将生产所需的数据拉入虚拟环境,以确保数据库是生产的镜像。当我们想进行测试时,问题就出现了;我似乎无法将应用程序设置为模型a(连接到DB1)和模型B(连接到DB2)都可以在同一个SQLite文件(在repo预配置文件中)中进行测试。查看示例配置文件可能更有意义: 我的数据库配置文件:Database design 使用laravel在多个环境中使用多个数据库,database-design,laravel-5,architecture,Database Design,Laravel 5,Architecture,我正在编写的Laravel5.2应用程序遇到了一个架构难题。应用程序连接到生产中的多个数据库服务器;我已经为所有的开发人员建立了流浪环境,我们都将生产所需的数据拉入虚拟环境,以确保数据库是生产的镜像。当我们想进行测试时,问题就出现了;我似乎无法将应用程序设置为模型a(连接到DB1)和模型B(连接到DB2)都可以在同一个SQLite文件(在repo预配置文件中)中进行测试。查看示例配置文件可能更有意义: 我的数据库配置文件: <?php return [ 'default' =&g
<?php
return [
'default' => 'platform',
'connections' => [
'platform' => [
'driver' => 'mysql',
'host' => env('PLATFORM_HOST'),
// ...
],
'product' => [
'driver' => 'mysql',
'host' => env('PRODUCT_HOST'),
// ...
],
'testing' => [
'driver' => 'sqlite',
'database' => storage_path().'/testing.db'
]
]
];
<?php
namespace App\Platform;
use Illuminate\Database\Eloquent\Model;
class ModelA extends Model
{
protected $connection = 'platform';
protected $table = 'table_a';
}
<?php
namespace App\Product;
use Illuminate\Database\Eloquent\Model;
class ModelB extends Model
{
protected $connection = 'product';
protected $table = 'table_b';
}