2014-12-24 2 views
2

여러 데이터베이스 연결이있는 프로젝트에서 작업하고 있습니다. 내 컨트롤러에서 장인의 명령을 실행할 수 있습니다 Artisan::call('migrate', array('--path' => 'app/database/migration'));Laravel Artisan 데이터베이스 연결 명령

그러나 이것은 내 기본 데이터베이스 연결에서 실행됩니다. 이제 저는 다른 동적 데이터베이스 연결을 위해 artisan 명령을 호출하는 방법을 찾고 있습니다. Artisan::call('migrate', array('--database' => 'myDatabase', '--path' => 'app/database/migration/myCustomMigration'));과 같은 명령에서 데이터베이스 이름을 지정할 수 있지만 예상대로 작동하지 않습니다. 내 기본 데이터베이스 연결에서 여전히 명령을 실행 중입니다.

내가 좋아하는 웅변과 함께 작업을 실행할 수 있도록 할 수있는 방법이 있나요 ... 사전에

$user = new User; 
$user->setConnection('myDatabaseConnectionKey'); 
$user->email = $email; 
$user->password = Hash::make('password'); 
$user->first_name = 'First name'; 
$user->last_name = 'Last name'; 
$user->created_at = new DateTime(); 
$user->updated_at = new DateTime(); 
$user->save(); 

감사합니다.

답변

1

다른 데이터베이스 연결에 대해 다른 환경을 설정하는 것이 좋습니다. 그런 다음 --env 플래그를 사용하여 해당 환경에서 장인 명령을 호출 할 수 있습니다.

+0

로컬 개발에는 이미 env가 설정되어 있습니다. 여전히'Database [dbName] not configured .'를 얻었습니다. 나는 이미 그 연결을 설정했고'Config :: get ('database.connections');를 사용하여 볼 수 있습니다. –

+1

알았어요! 나는 그것을 잘못하고 있었다! 'artisan :: call ('migrate', array ('- database'=> 'connectionKey', '- env'=> '로컬', '--path'=> 'app/database/migration/myCustomMigration')); 이제 제대로 작동합니다. –

+0

감사합니다 모하마드! 그게 바로 제가 찾고 있던 것이 었습니다! --database 매개 변수도 누락되었습니다. – Poncho

관련 문제