2017-05-29 92 views
0

我在两个不同的数据库中有两组用户。但是,如何检查两个database.users表?我在想这样的事情吗?Laravel 5.3多用户数据库尝试登录

$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个表?可能要再次查看您的数据库设计。 – Neat

+0

两个数据库分别与一个用户表。那有意义吗? –

+0

@dave_the_dev它很合理,但它不是一个好设计。您可以通过在查询上设置默认连接来实现您想要的问题。 – Sandeesh

回答

0

如果你从不同的连接多个模型,那么你可以指定要通过添加$connection财产上的模型中使用的连接。

protected $connection = 'connection-name'; 

使用查询生成器,您可以将连接设置为即时使用。

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

你可以用雄辩的方式做同样的事情。

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

感谢以上。我之前尝试过,但我需要一种动态更改它的方法。我将不得不考虑多租户 –