You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Laravel Tenancy v3如何通过Eloquent模型访问中央数据表?

解决Tenancy for Laravel v3中用Eloquent访问中央表的问题

要在Tenancy for Laravel v3里通过Eloquent模型访问中央表,核心是给模型指定中央数据库连接,具体操作如下:

  • 给中央表对应的Eloquent模型设置$connection属性,指向你的中央数据库连接名(默认通常是mysql,可在config/database.php里确认):
namespace App\Models;

use Illuminate\Database\Eloquent\Model;

class Course extends Model
{
    // 指定使用中央数据库连接
    protected $connection = 'mysql';

    // 若表名不符合Eloquent默认复数规则,需手动指定
    // protected $table = 'courses';
}
  • 之后直接调用模型的查询方法即可:
$courses = Course::all();

如果需要临时切换连接(比如同一模型有时访问租户表、有时访问中央表),可以用on()方法动态指定连接:

// 临时使用中央连接查询
$courses = Course::on('mysql')->get();
// 切换回租户连接(如果当前上下文是租户环境)
$users = User::onTenant()->get();

注意:要确保config/database.php中配置的中央连接信息正确,且该连接拥有中央表的访问权限。

内容的提问来源于stack exchange,提问作者Vince

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.12 03:16:24