질문을 삭제하지 말아주세요.!
 
1
0
-1

로컬에 두개의 데이터 베이스가있습니다 


a 란 데이터베이스를 env에 적용하고 이용하고 있는데 

b란 데이터베이스에 있는 테이블의 정보를 이용하고 싶은데 어떤식으로 이용하면 좋을까요?? 



    CommentAdd your comment...

    1 answer

    1.  
      2
      1
      0

      env에 DB_CONNECTION으로 mysql을 지정하면

      config/database.php

      에서 이 값을 읽어 디폴트 데이터베이스를 connections에 정의한 mysql로 선택하는건 이미 알고계실겁니다.


      다중 데이터베이스를 이용하는 방법은

      config/database.php에 있는 connections항목에

      'connections' => [
      	'mysql' => [
      		...
      	],
      	'임의 커넥션명' => [
      		... 각종 설정을 mysql과 같이 설정해주시면 됩니다.
      	]
      ]

      이렇게 커넥션을 정의해주신 뒤 

      컨트롤러와 같은 데이터베이스에 접근해야 하는 곳에서

      DB::connection('임의 커넥션명')->select('...');

      와 같이 사용해도 되고, 사용중인 모델에

      class User extends Authenticable {
      	...
      	protected $connection = '임의 커넥션명';
      	...
      }

      이와 같이 커넥션을 설정해주신 뒤 사용하면 됩니다.


      1. getahead92

        답변 감사합니다!! 

        죄송한데 로그인도 연동이 될수있을까요?? 

        a.에서 attempt 로 로그인해서 세션을 생성하는데

        b에서도 a의 유저테이블에 유저가 있으면 세션을 생성해서 사용하게 하고싶은데

        attempt 함수를 이용해서 b웹에서도 로그인을 할수있을까요 ?? 

      2. 레시피

        네 b에 있는 User 클래스에 connection을 a 데이터베이스로 지정해주면 됩니다.

      CommentAdd your comment...