Laravel 5.1 动态数据库连接
Laravel 5.1 dynamic database connection
我正在使用 laravel5.1 和 mongoDb。在我的应用程序中,每个用户都有单独的数据库。
当用户登录时,我使用 Config::set('Key' : 'Value')
.
根据用户数据库设置数据库
当我尝试使用 Config::get('database)
获取当前数据库连接时,一切正常,但是当我尝试从数据库获取数据时,它 return 默认数据库数据。
您必须按如下方式覆盖模型中的 connection
属性:
<?php
namespace App\Models;
class Model extends \Illuminate\Database\Eloquent\Model
{
protected $connection = 'your_connection_name_from_database_config';
}
您也可以通过调用 $model->setConnection('mongo');
动态设置此值
希望对您有所帮助。
DB::purge('mongodb-name');
我在 Config::set("Key","value")
之后用过这个。
它对我有用。
我正在使用 laravel5.1 和 mongoDb。在我的应用程序中,每个用户都有单独的数据库。
当用户登录时,我使用 Config::set('Key' : 'Value')
.
当我尝试使用 Config::get('database)
获取当前数据库连接时,一切正常,但是当我尝试从数据库获取数据时,它 return 默认数据库数据。
您必须按如下方式覆盖模型中的 connection
属性:
<?php
namespace App\Models;
class Model extends \Illuminate\Database\Eloquent\Model
{
protected $connection = 'your_connection_name_from_database_config';
}
您也可以通过调用 $model->setConnection('mongo');
希望对您有所帮助。
DB::purge('mongodb-name');
我在 Config::set("Key","value")
之后用过这个。
它对我有用。