Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/database/8.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/lua/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Database Laravel 5.0从默认数据库切换到其他数据库以在所有视图和控制器上使用_Database_Laravel_Connection - Fatal编程技术网

Database Laravel 5.0从默认数据库切换到其他数据库以在所有视图和控制器上使用

Database Laravel 5.0从默认数据库切换到其他数据库以在所有视图和控制器上使用,database,laravel,connection,Database,Laravel,Connection,我在切换数据库时遇到了一个问题。 我在config.database文件中将数据库“a”设置为默认值;除此之外,我还有一个数据库“B”中的连接数组 当我登录并转到控制器中的POST登录方法时,我切换到数据库“B” 使用“用户”表并获取登录凭据 if(\Auth::attempt(array('username'=>$username , 'password'=>$password) ) )... 这很好用。但是,当我转到另一个blade.php时 我将从默认连接(“A”)上的“用

我在切换数据库时遇到了一个问题。 我在config.database文件中将数据库“a”设置为默认值;除此之外,我还有一个数据库“B”中的连接数组

当我登录并转到控制器中的POST登录方法时,我切换到数据库“B”

使用“用户”表并获取登录凭据

if(\Auth::attempt(array('username'=>$username , 'password'=>$password) ) )...
这很好用。但是,当我转到另一个blade.php时 我将从默认连接(“A”)上的“用户”表而不是B中的用户表中获取凭据

所以当我这么做的时候

echo Auth::user()->firstName()." - ".Auth::user()->id; 
//it will display  Carlos - 10 instead of displaying Luis - 10
所以我猜它是在查找id=10的行,但是在表A(dafault连接)上,而不是在表B(我使用Config::set()切换的连接)上

我还尝试在每个视图上放置Config::set('database.default','B'),但它仍然提供表A中的凭据 有什么帮助吗? 如何永久更改数据库?
顺便问一下,为什么我必须调用两个数据库来获取用户凭据?因为在我的登录表单上,我有一个输入来输入公司名称(A或B)。

尝试如下更改连接:

DB::setDefaultConnection('A');

我刚刚将它添加到我的登录控制器中,但运气不好。顺便说一下,我正在使用eloquent。我注意到如果我转到
APP>user.php
并将
protected$table='user';
更改为user类中protected的
$table='B.user';
,它会起作用,但是如何从LoginController更改它呢?您还指的是一个新请求吗当你说“新建视图”时?哦,我的意思是当我成功登录
if(\Auth::trunt(数组('username'=>$username,'password'=>$password)){返回视图('test');}
if(\Auth::attempt(array('username'=>$username , 'password'=>$password) ) )...
echo Auth::user()->firstName()." - ".Auth::user()->id; 
//it will display  Carlos - 10 instead of displaying Luis - 10
DB::setDefaultConnection('A');