我有3张桌子:
用户 -
id
name
项目
id
projectName
项目用户
id
userId
ProjectId
我想要获取所有类似的数据:
newtable的
ProjectName
UserName
现在我的代码看起来像:
class Project extends Model
{
public function user(){
return $this->belongsToMany('App\User','Students','UserId','ProjeId');
}
}
所以我的问题是,如何使用Eloquent获取我的数据并在控制器端管理数据?
thx任何帮助
答案 0 :(得分:0)
如果你想要一张新表"使用您的名字,您可以使用纯旧的SQL。在Laravel中,您使用DB类。
$mydataset = DB::select("SELECT U.name as UserName, P.name as ProjektName FROM User AS U, Project AS P, Project-User AS PU WHERE PU.userId = U.id AND PU.ProjectId = P.id")
答案 1 :(得分:0)
您可以通过两个模型上的关系来实现,然后使用以下示例查询它们:
项目模型
public function user(){
return $this->belongsToMany('App\User','project-user','user_id','project_id');
}
用户模型
public function project(){
return $this->hasMany('App\Projects','project-user','user_id','project_id');
}
然后你可以像这样打电话给他们:
$user= User::find($user_id);
$user->project()->get()