Intro - 2 koneksi
Dengan asumsi Anda memerlukan 2 koneksi:default dan disesuaikan , Anda akan memberikan konfigurasi mereka di config/database.php
. Anda seperti biasanya, maka Anda perlu:
>>> DB::connection()->getDatabaseName()
=> "default"
>>> DB::connection('custom')->getDatabaseName()
=> "customized"
// change the config...
>>> config(['database.connections.custom.database' => 'new_customized_db'])
=> null
// ...but once the connection is already open, config change doesn't affect it...
>>> DB::connection('custom')->getDatabaseName()
=> "customized"
// ...so we need to get rid of existing connection completely (reconnect() won't work)
>>> DB::purge('custom')
=> null
>>> DB::connection('custom')->getDatabaseName()
=> "new_customized_db"
Lebih banyak koneksi
Di atas Anda dapat melihat apa yang perlu dilakukan. Dalam kasus Anda, Anda cukup meletakkan konfigurasi seluruh koneksi untuk setiap koneksi baru yang Anda butuhkan, dan itu akan berfungsi seperti yang diharapkan:
>>> config(['database.connections.on_the_fly' => [
>>> 'database' => 'provided_on_the_fly',
>>> ...
>>> ]])
=> null
>>> DB::connection('on_the_fly')->getDatabaseName()
=> "provided_on_the_fly"
Fasih
Jika Anda ingin menggunakan koneksi khusus untuk model Eloquent . Anda anda dapat menggunakan SomeModel::on('on_the_fly')->find($id)
(mengambil model contoh akan menggunakan koneksi untuk semua operasi berikutnya)