- 定义 belongsTo 关系
- 方法加入到模型
在一个多到一的关系每个声明 “belongs to”的实例,都必定有它隶属的 其他 Model 实例对象(目标对象).
而对象目标可以有多种关系模式
案例, 客户和订单的关系:
- 每个订单都属于唯一客户放, “Order belongsTo (one) Customer”(订单隶属于客户)
Order 这个 model 有一个外键 关联到 目标(Customer) Model 的主键.
如果主键不存在,Loopback 会自动添加一个.
另一种 belongsTo 是另一个 Model 使用 one-to-one 关系, 类似于 many-to-one, 每个 实例都只属于一个目标实例, 同时目标实例只有一个实例
案例, 客户与地址的关系:
- 每个地址可以关联到一个用户, “Address belongsTo (one) Customer”.
- 每个客户只能拥有一个地址, “Customer hasOne Address”
定义 belongsTo 关系
案例, json 文件:
另外,也可以在代码中定义,但是不建议
如果声明模型没有一个外键属性, LoopBack 将会添加一个 Model 同名 , 默认关联外键为 Model 的id
如果不指定foreignKey(外键), LoopBack 派生关系的名称和外键规则如下:
- Foreign key: 追加的关系名称 “Id”, 如 Customer 的默认外键是 customerId
方法加入到模型
根据参数的不同,该方法可以用于设置或者获取所属模型实例。方法调用的结果被内部缓存,并通过后同步调用的方法提供。