使用 Laravel 构建 ORM 的 JSON 和关系
Posted
技术标签:
【中文标题】使用 Laravel 构建 ORM 的 JSON 和关系【英文标题】:Building JSON of ORM and Relationships with Laravel 【发布时间】:2014-10-30 09:54:35 【问题描述】:实际上,我这样做是为了在控制器中构建许多 ORM 对象的 json :
Response::json(Project::all());
结果:
[
id: 1, name: 'test1',
id: 2, name: 'test2',
id: 3, name: 'test3'
]
现在我想要:
[
id: 1,
name: 'test1',
levels: [
id: 1,
name: 'level1'
,
id: 2,
name: 'level2'
]
,
id: 2, name: 'test2', levels: [],
id: 3, name: 'test3', levels: []
]
我的项目模型是这样的:
class Project extends Eloquent
protected $table = 'projects';
public function levels()
return $this->belongsToMany('Level', 'project_has_levels');
你是怎么做到的?
【问题讨论】:
【参考方案1】:使用eager loading。
Response::json(Project::with('levels')->get());
【讨论】:
以上是关于使用 Laravel 构建 ORM 的 JSON 和关系的主要内容,如果未能解决你的问题,请参考以下文章
SQL 到 JSON,ORM 用于 PHP 7 和 Laravel
在 Laravel 中使用 Eloquent ORM 使用 LIKE 执行数据库搜索
PHP 独立使用 laravel ORM 数据库组件,PHP ORM数据库模型组件