因此,每当我需要获取主superadmin的租户信息时,我将租户数据库值设置为要查询的值:
\Config::set('database.connections.tenants.database', $tenant->username);
我能够做到这一点:
$users = User::on('tenant')->find(1);
但是这......
$users = User::on('tenant')->all();
...给我一个错误
调用未定义的方法Illuminate \ Database \ Query \ Builder :: all()
如何从租户的数据库中取回所有用户?
修改
public function showUsersForTenant($id)
{
$tenant = Tenant::findOrFail($id);
\Config::set('database.connections.tenants.database', $tenant->username);
\DB::reconnect();
\DB::setDatabaseName($tenant->username);
$users = User::on('tenant')->get();
return response()->json($users, 200);
}
答案 0 :(得分:2)
使用on
时,您应使用get
代替all
:
$users = User::on('tenant')->get()
事实上,all
方法会在内部调用get
。