Как подключить несколько баз данных в цикле foreach на лету в Laravel 5.6 - PullRequest
0 голосов
/ 15 февраля 2019

Я пытаюсь перенести некоторые базы данных.Во время выполнения я могу подключиться только к первой базе данных, но не к другим.

Вот мой код.любой может сказать мне, что не так с моим кодом.

public function database_update(Request $request)
{
    $get_service_type = ServiceType::where('id',$request->service)->get();
    $get_packages = Package::where('id',$request->package)->get();
    if(isset($get_service_type[0])){
        $service_type_name = $get_service_type[0]->name;
        $packages = [];
        foreach ($get_packages as $gp){
            $packages[$gp->id]  =   $gp->name;
        }
        $package_name = (isset($packages[$request->package])) ? $packages[$request->package] : '';
        $get_tables = MasterLayout::where([
            ['service_type','=',$request->service],
            ['package','=',$request->package],
        ])->get();
        foreach ($get_tables as $gt){
            Config::set('database.connections.project_mysql.database', $gt->database);

            DB::setDefaultConnection('project_mysql');
            Artisan::call('migrate',
                ['--path' => 'database/migrations/' . $service_type_name . '/' . $package_name]
            );
        }

        return back()->with('success_','tables updated');
    }
    else{
        return back()->with('error_','There is no record found');
    }
}

Я всегда получаю одно и то же имя базы данных approwsh_pharmacy_mas1547789795

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...