diff --git a/src/TenantDatabaseManagers/PostgreSQLSchemaManager.php b/src/TenantDatabaseManagers/PostgreSQLSchemaManager.php index 9d815b25..55f049d0 100644 --- a/src/TenantDatabaseManagers/PostgreSQLSchemaManager.php +++ b/src/TenantDatabaseManagers/PostgreSQLSchemaManager.php @@ -46,7 +46,11 @@ class PostgreSQLSchemaManager implements TenantDatabaseManager public function makeConnectionConfig(array $baseConfig, string $databaseName): array { - $baseConfig['schema'] = $databaseName; + if (version_compare(app()->version(), '9.0', '>=')) { + $baseConfig['search_path'] = $databaseName; + } else { + $baseConfig['schema'] = $databaseName; + } return $baseConfig; } diff --git a/tests/TenantDatabaseManagerTest.php b/tests/TenantDatabaseManagerTest.php index f64770b1..3d45d96f 100644 --- a/tests/TenantDatabaseManagerTest.php +++ b/tests/TenantDatabaseManagerTest.php @@ -194,7 +194,11 @@ class TenantDatabaseManagerTest extends TestCase ]); tenancy()->initialize($tenant); - $this->assertSame($tenant->database()->getName(), config('database.connections.' . config('database.default') . '.schema')); + $schemaConfig = version_compare(app()->version(), '9.0', '>=') ? + config('database.connections.' . config('database.default') . '.search_path') : + config('database.connections.' . config('database.default') . '.schema'); + + $this->assertSame($tenant->database()->getName(), $schemaConfig); $this->assertSame($originalDatabaseName, config(['database.connections.pgsql.database'])); }