Codeigniter3.0の開発バージョンを使用しています。
$db構成にSchemaプロパティがあることがわかります。しかし、ATMに使用しているようには見えません。私のスクリプトは複数のスキーマに接続しないためです。
postgreで複数のスキーマを使用してCIをセットアップする方法を知っている人はいますか?
Codeigniter3.0の開発バージョンを使用しています。
$db構成にSchemaプロパティがあることがわかります。しかし、ATMに使用しているようには見えません。私のスクリプトは複数のスキーマに接続しないためです。
postgreで複数のスキーマを使用してCIをセットアップする方法を知っている人はいますか?
これがCI開発者による解決策です。 https://github.com/EllisLab/CodeIgniter/commit/485a348a7a633d38f69a963e9f77e23077f75d11
CIシステム/コアのこのリンクから「データベース」フォルダのみをダウンロードし、application / config/database.phpに次の行を追加することをお勧めします...
$db['default']['schema'] = 'NAME_OF_YOUR_SCHEMA';
または、配列リストで使用している場合は、次のようになります。
$db['default'] = array('schema'=>'NAME_OF_YOUR_SCHEMA');
このような何かが、特に移行に関して、私を夢中にさせていました。
私のために働いたのは:
$this->db->query('SET search_path TO <schema>');
たとえば、up()メソッドの開始時と終了時:
public function up()
{
$this->db->query('SET search_path TO <custom_schema>');
...
# Database stuff here
...
$this->db->query('SET search_path TO public'); //where migrations table exists
}
これを試して、schema.table(構文)でのpg_query()エラーを回避し、リレーション「migrations」が存在しません。