我有一个活动菜单,有三个子菜单。这些子菜单对于活动是通用的,但具有不同的表。所以我想在一个模型类下使用这三个表,如何相互保存操作?
我的代码如下:
<?php
namespace App\Models;
use Illuminate\Database\Eloquent\Model;
use Illuminate\Support\Str;
use DB;
class Activity extends Model {
protected $table1 = 'task_management';
protected $table2 = 'call_management';
protected $table3 = 'event_management';
}
答案 0 :(得分:0)
use DB;
I have preferred using the DB query whenever i had to work with more than one table, below is a sample query.
$data = DB::table('base table name')
->join('join table name', 'join table name id', '=', 'master table name id')
->select('column 1', 'column 2', 'column 3')
->where('column1', $val);
答案 1 :(得分:0)
您可以创建另一个基于模型构建的类,或者甚至只使用简单的SQL查询作为@Peeje提到的。模型适用于Laravel中的单个表 - 我不认为有一种简单的方法可以使它适用于不同的表。
答案 2 :(得分:0)
我建议你遵循雄辩的方式,
您应创建3个模型并执行the answer from Swier
就像
一样简单$task = User::find(1)->TaskManagement;
允许您像{{1}}一样进行检索 注意:您应该根据需要创建和自定义模型。