- model 关系概念
- 使用
slc loopback:relation
- 通过REST API 暴露关联对象的方法
- 1个顾客有多个订单, 同时 每个订单都只属于1个顾客
- 1个用户可以拥有 一个或多个角色, 每种角色可以有 零个或者多个用户
- 一个医生可以看见多个病人的预约, 一病人也可以看见多个医生的情况。
通过连接模型, Loopback 暴露一组API来与每个模型实例和查询的互动,并筛选基于客户需求的信息。
可以定义模型之间的如下关系:
- HasOne relations
- HasMany relations
- HasManyThrough relations
- HasAndBelongsToMany relations
- Polymorphic relations
- Embedded relations (embedsOne and embedsMany) 显示主体区别
你可以在 model 定义JSON 文件中 或者 js 代码中定义。
当你为一个 Model 定义了一个 关系, Loopback 将对这个 Model 添加一组方法, 每种类型的关系, 在文章中详细介绍
创建现有 model 之间的新关系的最简单方法是使用, 关系的名称必须与它所引用的属性不同.
对于大部分关系类型,他们有三个选项:
- Scope
- Properties
Scope 范围
scope 选项可以是一个对象或者 一个方法, 并适用于在相关范围内的所有过滤/条件。
scope 对象 , 拥有所有过滤选项: where
, order
, , limit
, offset
, …
当范围是一个函数,它将接收当前实例,以及默认的过滤器对象。
使用方法: , id 改成 scope 名
Demo:
Properties(属性)
你可以通过两种方法指定 properties 选项.