Database 查询前的Laravel更改模型表
我需要在查询开始之前从Laravel模型更改查询的表 通常,您会进行如下查询:Database 查询前的Laravel更改模型表,database,laravel,eloquent,Database,Laravel,Eloquent,我需要在查询开始之前从Laravel模型更改查询的表 通常,您会进行如下查询: ExampleModel::where('column_name', =, 'value')->get(); 对于一种情况,我想使用一个视图表,它包含来自组合在一个视图中的多个表的信息 因此,我只需要为这一种情况切换ExampleModel表,例如: ExampleModel::table('my_view')->where(...)->get(); 使用DB::table('my_view')
ExampleModel::where('column_name', =, 'value')->get();
对于一种情况,我想使用一个视图表,它包含来自组合在一个视图中的多个表的信息
因此,我只需要为这一种情况切换ExampleModel
表,例如:
ExampleModel::table('my_view')->where(...)->get();
使用DB::table('my_view')->where(…)->get()
不是一个选项,因为需要在ExampleModel
上应用几个局部作用域
如我所见,有以下几种选择:
DB
-命令还有其他选项吗?您可以通过将表名传递给setTable()方法来完成这项工作,例如:
$user = new Users();
$user->setTable('customers');
$user->where(id,1)
...
处理此问题的laravel方法是为您的视图提供一个专用模型,其范围适用于每个相关模型:
我不明白你为什么要用同样的型号。我想你所说的两个模特都有关系吧?在这种情况下,您可以使用。如果我错了,请纠正我。