【发布时间】:2015-06-16 01:47:40
【问题描述】:
因此很容易在模型中包含关系,例如:
class User extends Model {
protected $with=['roles']
}
class Role extends Model {
protected $with=['permissions']
}
当用户资源有获取请求时,它会自动包含关联的角色。
但在此设置中,与用户资源一起返回的角色资源还包括它自己的包含关系,例如:
{user:{id:1, roles:[{id:1, permissions:[{id:1..
这会生成巨大的对象,其中主要包括不必要的相关子模型。
我可以通过设置属性来替换默认关系来解决此问题,但我正在处理的 API 有 30 多个资源,并且该路径不是理想的,因为它需要我在模型上编写大量重复代码。
有没有办法轻松管理附加关系的深度?
我想像这样:
class Role extends Model {
protected $with=['permissions'];
protected $includeWith=[]; // role wont have the permissions appended when included
}
【问题讨论】:
标签: php rest eloquent laravel-5