2017-05-29 1 views
0

Ich habe zwei Gruppen von Benutzern in zwei verschiedenen Datenbanken. Aber wie überprüfe ich beide database.users Tabellen? Ich habe so etwas in der Art gedacht?Laravel 5.3 mehrere Benutzerdatenbanken versuchen Login

$user = new User; 

$user->setTable('other-database.users'); 

// or 

$user->setConnection('other-database'); 

if (\Auth::attempt(['email' => $email, 'password' => $password])) { 
    // Authentication passed... 
    return redirect()->intended('dashboard'); 
} else { 
    dd('nope'); 
} 
+0

2 Tabellen für verschiedene Arten von Benutzern ?, möchten vielleicht wieder auf Ihre Datenbank-Design aussehen. – Neat

+0

Zwei Datenbanken mit jeweils einer Benutzertabelle. Ist das sinnvoll? –

+0

@dave_the_dev es macht Sinn, aber es ist kein gutes Design. Sie können erreichen, was Sie in der Frage wünschen, indem Sie die Standardverbindung für die Abfragen festlegen. – Sandeesh

Antwort

0

Wenn Sie mehrere Modelle aus verschiedenen Verbindungen haben, dann können Sie die Verbindung angeben, auf Ihr Modell zu verwenden, indem Sie die $connection Eigenschaft.

protected $connection = 'connection-name'; 

Mit Abfrage-Generator können Sie die Verbindung für die Verwendung im laufenden Betrieb festlegen.

$users = DB::connection('connection-name')->select(...); 

Sie können dies ähnlich mit eloquent tun.

$user = User::on(‘connection-name’)->find(1); 
+0

danke für das oben genannte. Ich habe das schon mal versucht, aber ich brauche einen Weg, um es dynamisch zu ändern. Ich muss in Multitenancy schauen –