我目前正在从事 Laravel 项目。默认数据库连接指向 mySQL 驱动程序。如何将驱动程序更改为 Postgres 并使用 heroku 提供的凭据?
最佳答案
首先,在数据库配置文件的顶部添加以下代码。
$host = env('DB_HOST', '127.0.0.1');
$database = env('DB_DATABASE', '');
$username = env('DB_USERNAME', 'forge');
$password = env('DB_PASSWORD', 'forge');
if($databaseUrl = getenv('DATABASE_URL')) {
$url = parse_url($databaseUrl);
$host = $url['host'];
$username = $url['user'];
$password = $url['pass'];
$database = substr($url['path'], 1);
}
现在在同一个文件中像这样更改 pgSQL 键的值,
'pgsql' => [
'driver' => 'pgsql',
'host' => $host,
'port' => env('DB_PORT', '5432'),
'database' => $database,
'username' => $username,
'password' => $password,
'charset' => 'utf8',
'prefix' => '',
'schema' => 'public',
'sslmode' => 'prefer',
]
现在登录到您的 heroku 帐户,在项目的设置选项卡下添加两个配置变量,
- 键:DATABASE_URL 和值:heroku 在创建 hobby dev 实例时提供的连接字符串
- 键:DB_CONNECTION 和值:pgsql
关于php - 如何配置 Laravel 应用程序以使用 heroku PostgreSQL hobby dev?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45488070/