현재 데이터베이스 구성 파일에서 Cakephp의 동적 데이터베이스 전환을 사용하고 있습니다. 하위 도메인 즉, TEST.mysite.com 및 PROD.mysite.com을 기반으로 전환합니다.Cakephp의 DB 연결 오류 처리
데이터베이스 연결이있는 경우 어떻게 테스트하고 리디렉션하는 것이 가장 좋고 좋은 곳입니까?
감사합니다,
kSeudo
현재 데이터베이스 구성 파일에서 Cakephp의 동적 데이터베이스 전환을 사용하고 있습니다. 하위 도메인 즉, TEST.mysite.com 및 PROD.mysite.com을 기반으로 전환합니다.Cakephp의 DB 연결 오류 처리
데이터베이스 연결이있는 경우 어떻게 테스트하고 리디렉션하는 것이 가장 좋고 좋은 곳입니까?
감사합니다,
kSeudo
이 작업을 수행하는 신속하고 더러운 방법은 생성자에서 조건을 넣어하는 것입니다. 조건부 구성을 생성하고 버그가 도입되어 프로덕션 응용 프로그램이 dev 데이터베이스에 연결되어 있기 때문에 더티라고 말합니다.
class DATABASE_CONFIG {
public $default = array(
'driver' => 'mysql',
'persistent' => false,
'host' => '',
'login' => '',
'password' => '',
'database' => '',
'prefix' => '',
'encoding' => 'utf8'
);
public $testDB = array(
'driver' => 'mysql',
'persistent' => false,
'host' => '',
'login' => '',
'password' => '',
'database' => '',
'prefix' => '',
'encoding' => 'utf8'
);
public function __construct()
{
if (false !== stripos($_SERVER['HTTP_HOST'], 'test'))
{ // Use the test DB since 'test' is present in the server host
$this->default = $testDB;
}
}
}
당신의 생성자에 다음을 넣어 수있는 연결을 테스트하려면 app_model.php 당신의 예를 게시하시기 바랍니다 수 CakePHP의 버전 (1.x 나 2.X)와
public function __construct()
{
parent::__construct();
$db =& ConnectionManager::getDataSource('default');
if (empty($db->connection))
{
echo 'oh noes we werent able to connect';
exit;
}
}
신난다, 이것이 내가 찾고 있었던 것이다. 많은 감사합니다. – kSeudo
당신의 config. – RumpRanger