【发布时间】:2016-02-04 04:34:18
【问题描述】:
我获得了经过身份验证的用户拥有的所有项目。
$items=Auth::user()->with('items')->get();
在我看来,我可以访问项目集合,但不是 title_id 而是要检索 item_title 值。 目前我可以使用以下代码获取 item_title 值:
$item->title->title
是否可以简化它来检索标题,如下所示: $项目->标题 ?
这是我的模型和关系:
Users
id
username
Item
id
user_id
title_id
Item_Titles
id
title
用户模型:
public function items()
{
return $this->hasMany('Item', 'user_id', 'id');
}
物品型号:
public function user(){
return $this->belongsTo('User', 'user_id', 'id');
}
public function title()
{
return $this->belongsTo('ItemTitle','title_id','id');
}
ItemTitle 模型:
public function item()
{
return $this->hasMany('Item', 'title_id', 'id');
}
更新
对不起,我可能不清楚。准确地说 - 我只想找到 Eloquent 的替代方案:
$items=Item::where('user_id','=',Auth::id())->leftJoin('item_titles', 'item.title_id', '=', 'item_titles.id')->get();
@foreach ($items as $item)
{{ $item->title }}
@endforeach
【问题讨论】:
标签: php laravel laravel-5 eloquent laravel-5.1