如果laravel中的关系是多对多,则拉出特定数据
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如果laravel中的关系是多对多,则拉出特定数据相关的知识,希望对你有一定的参考价值。
我想询问如何从Laravel数据库中提取特定数据(某些列)
这是我的代码:
用户模型:
public function events()
return $this->belongsToMany('App\Events')->withTimestamps();
事件控制器:
public function showjson()
$user_id=Auth::user()->id;
$events = DB::table('events')
->select(
'id',
'calendar_title as title',
'startdate as start',
'enddate as end',
'calendar_color as backgroundColor',
'calendar_color as borderColor')
->where('user_id',$user_id)
->get();
$user=Auth::user();
$eventData=$user->events;
return $eventData;
我已经有了这两者之间的关系,我可以通过这个得到数据:
$user = Auth::user();
$eventData = $user->events;
但我希望按名称获取特定列,例如上面的select code
。
这是我可以调用特定数据并更改列名称的另一种方式吗?
答案
我希望仅在json中显示calendar_title,calendar_des。
您可以使用lists
检索列值列表,查看数据库查询生成器Retrieving Results section:
$user->events->lists('calendar_title','calendar_des');
如果你想返回Json格式,你可以使用toJson() method:
$user->events->lists('calendar_title','calendar_des')->toJson();
希望这可以帮助。
以上是关于如果laravel中的关系是多对多,则拉出特定数据的主要内容,如果未能解决你的问题,请参考以下文章