2016-07-14 31 views
-1

我有3个表:Laravel 5 - 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'); 
    } 
} 

所以我的问题是,如何我可以使用口才控制器侧获取我的数据和管理数据?

thx任何帮助

+1

SO不是代码写入服务。阅读文档。 – TheFallen

回答

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") 
+0

其实我想要的东西是拉动数据形状像(productName,userName)与使用雄辩 –

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()