Laravel在5.5以后,更新了API资源
资源的生成和介绍相关,请自行查看文档: Laravel 5.8文档
动机
我一直用的都是其他框架,Laravel是最近一个项目才去实际接触,确实是很赞的一款框架。
在项目中,我碰到了这样一个问题:
User模型和Article模型 1对多关联,而Article模型和Caregory模型1对1关联。
我现在需要通过User模型获取到Article表和Category表中的数据。
第一次尝试:预加载 + 远程关联。
在阅读文档时,预加载模型,可以很好的去获取关联模型的字段。如下:
public function index(int $id)
{
return User::with('articles')->find($id);
}
获取的结果集像这样:
{
"id": 9,
"name": "张三",
"create_time": "2019-03-18 17:40:59",
"articles": [
{
"id": 1,
"title": "Laravel",
"user_id": 9,
"content": "测试1",
"category_id": 1,
"created_at": "2019-04-13 17:59:12"
},