Giải pháp đơn giản nhất là đặt cấu hình cơ sở dữ liệu của bạn trong thời gian chạy. Laravel có thể mong đợi các cài đặt này được tải từ config/database.php
nhưng điều đó không có nghĩa là bạn không thể thiết lập hoặc thay đổi chúng sau này.
Cấu hình được tải từ config/database.php
được lưu trữ dưới dạng database
trong cấu hình Laravel. Có nghĩa là, các kết nối connections
mảng bên trong config/database.php
được lưu trữ tại database.connections
.
Vì vậy, bạn có thể dễ dàng ghi đè / thay đổi các kết nối này như sau:
Config::set("database.connections.mysql", [
"host" => "...",
"database" => "...",
"username" => "...",
"password" => "..."
]);
Kể từ đó trở đi, bất kỳ mô hình Eloquent nào sử dụng mysql
này kết nối sẽ sử dụng cấu hình kết nối cơ sở dữ liệu mới này.
Tôi khuyên bạn nên thực hiện việc này trong Nhà cung cấp dịch vụ nếu có thể.