我像这样查询我的模型
$projects = Project::where('status', '!=', 'Completed')->get();
这会给我这样的回复
#attributes: array:16 [▼
"id" => "7"
"user_id" => "32"
"contactEmail" => "sdfsdf@dsfsdf.com"
"deploymentDate" => "2016-07-29"
"status" => "Starting"
"deleted_at" => null
"created_at" => "2016-07-12 14:12:32"
"updated_at" => "2016-07-15 09:47:34"
]
然后我传递此模型以生成Excel文件
Excel::create('projects', function($excel) use($projects) {
$excel->sheet('Sheet 1', function($sheet) use($projects) {
$sheet->fromArray($projects);
});
})->export('xls');
一切正常,生成Excel。我有一个问题是excel文件显示user_id为32.而不是显示user_id,我想显示userName,这是 我的用户表的一部分。
如何加入这两个表来获取名称而不是ID?所有关系都已正确设置。
由于
答案 0 :(得分:2)
试试这个,
$projects = Project::select('product.*','users.name AS user_name')
->leftjoin('users','product.user_id','=','users.id')
->where('status', '!=', 'Completed')->get();
使用此代码,您可以user_name
获得更多关系,请参阅this