Created
June 29, 2016 13:29
-
-
Save devLopez/73806c1ac98e3480f312d37c834f0892 to your computer and use it in GitHub Desktop.
Conexão dinâmica com bancos de dados
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
<?php namespace App\Traits\Db; | |
use Config; | |
/** | |
* DatabaseConnectionTrait | |
* | |
* Realiza a reconfiguração do banco de dados baseado no nome da conexão | |
* definido no model | |
* | |
* @author Matheus Lopes Santos <[email protected]> | |
* @since 29/06/2016 | |
*/ | |
trait DatabaseConnectionTrait | |
{ | |
/** | |
* Construtor | |
*/ | |
public function __construct() | |
{ | |
$this->changeConnection(); | |
} | |
/** | |
* Cria a configuração de acordo com o nome da conexão. Neste caso não | |
* é necessário redefinir a conexão, pois, com a mesma setada, o Laravel | |
* buscará automaticamente por esta nova conexão | |
*/ | |
protected function changeConnection() | |
{ | |
Config.set('database.connections.'$this->connection, [ | |
'driver' => 'sqlite', | |
'database' => database_path('database.sqlite'), | |
'prefix' => '', | |
]); | |
} | |
} |
Edilson, perdoe não responder antes, pois o Gist não me avisou. É totalmente viável. Basta que, a invés da conexão do sqlite pelos dados de conexão do mysql que está no database.php
Abraço
mano, como que usa isso? sou novo no laravel e preciso setar uma segunda conexão dinamicamente.
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Camarada, estou iniciando no Laravel, então talvez a minha dúvida seja simples, mas se puder ajudar vai ser muito útil.
É possível adaptar esse código para bancos MySql?
Ou seja, ao invés dele setar outro arquivo SQLite, setar somente o nome de outro schema do MySql?