我有一个Laravel 5.1应用程序,我可以动态设置模型的连接属性:
class Config extends Model {
public function __construct() {
$this->connection = Session::get('conn') or abort(500, 'No conn');
}
protected $table = 'config';
}
但是在Laravel 5.3+中,我们无法在构造函数方法中访问会话而无需hack
框架。
在模型上执行此操作的最佳/推荐方法是什么?
更新 这段代码实际上有效,我的问题出在Controller级别而不是Model。
答案 0 :(得分:1)
使用全局会话助手
$this->connection = session('conn') or abort(500, 'No conn');
答案 1 :(得分:1)
效果很好。
使用外观
导入
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');
}