2017-07-21 59 views
0

我創建新的PostgreSQL用戶:如何爲laravel設置默認postgresql模式?

CREATE ROLE lara_user SUPERUSER LOGIN PASSWORD 'mypassword'; 

然後創建一個由該用戶

CREATE schema lara AUTHORIZATION lara_user; 

在Laravel的.env文件我有

DB_DATABASE=postgres 
DB_USERNAME=lara_user 
DB_PASSWORD=mypassword 

Laravel資模式不認爲架構lara並仍然連接到public架構。

如何爲Laravel更改和設置默認架構lara

+1

可以設置在'應用/配置/ database.php'架構中,使用適當的連接的'schema'陣列密鑰。這可以是硬編碼的,也可以從'.env'引用一個新的'DB_SCHEMA'常數 – iainn

+0

在'.env'文件中增加'DB_SCHEMA = lara',儘管我的Laravel應用程序仍然能夠成功地查看'public'架構(並沒有在'lara'架構中) – RIKI

+0

@iainn - '.env'文件中的'DB_SCHEMA'不起作用,儘管'app/config/database.php'文件中的架構改變了,謝謝。 – RIKI

回答

2

app/config/database.php

'pgsql' => array(
      'driver' => 'pgsql', 
      'host'  => 'localhost', 
      'database' => 'forge', 
      'username' => 'forge', 
      'password' => '', 
      'charset' => 'utf8', 
      'prefix' => '', 
      'schema' => 'public', 
     ), 
+1

可能你的意思是在這裏需要模式名稱:''schema'=>'public''。我把它改成了lara,它很有用,謝謝 – RIKI

相關問題