Php 如何在Laravel中动态设置模型的连接属性?

Php 如何在Laravel中动态设置模型的连接属性?,php,laravel,Php,Laravel,我有一个Laravel 5.1应用程序,我可以动态设置模型的连接属性,这样做: class Config extends Model { public function __construct() { $this->connection = Session::get('conn') or abort(500, 'No conn'); } protected $table = 'config'; } 但是在Laravel5.3+中,如果不hack框架,我们就无法访问构造函数方法

我有一个Laravel 5.1应用程序,我可以动态设置模型的连接属性,这样做:

class Config extends Model {

public function __construct() {
    $this->connection = Session::get('conn') or abort(500, 'No conn');
}

protected $table = 'config';
}
但是在Laravel5.3+中,如果不
hack
框架,我们就无法访问构造函数方法中的会话

在模型上执行此操作的最佳/推荐方法是什么

更新:
这段代码实际上是有效的,我的问题出在控制器级别,而不是模型。

使用全局会话助手

 $this->connection = session('conn') or abort(500, 'No conn');
它工作得很好

使用门面

进口

use Illuminate\Support\Facades\Session;
然后你可以像这样打电话

public function __construct() {
    $this->connection = Session::get('conn') or abort(500, 'No conn');
}
使用辅助功能

public function __construct() {
    $this->connection = session('conn') or abort(500, 'No conn');
}

你犯了什么错误?对我来说很好用?我能调用构造函数内部的会话?是的!糟糕的是,我的问题出在控制器上,而不是模型上。