Loopbackjs HasManyThrough vs Hasandbelonggamny

Loopbackjs HasManyThrough vs Hasandbelonggamny,loopbackjs,Loopbackjs,这些HasManyThrough和HasandBongTomany之间有什么区别 VS 答案在于关系名称本身。我将使用文档中提供的示例 有许多路径: 医生预约了许多病人 病人预约了许多医生 在这里,医生和患者通过预约相互联系,但不是直接联系。预约模式有助于建立一种既属于医生又属于患者的关系。由于预约,患者可以预约尽可能多的医生。医生可以看到为他/她预约的患者数量 哈桑德贝隆酒店: 这个学生有许多班级,属于许多班级 班级有很多学生,属于很多学生 在这里,学生和班级都是直接相关的。学生通常参

这些HasManyThrough和HasandBongTomany之间有什么区别

VS


答案在于关系名称本身。我将使用文档中提供的示例

有许多路径

  • 医生预约了许多病人
  • 病人预约了许多医生

    在这里,医生和患者通过预约相互联系,但不是直接联系。预约模式有助于建立一种既属于医生又属于患者的关系。由于预约,患者可以预约尽可能多的医生。医生可以看到为他/她预约的患者数量

哈桑德贝隆酒店

  • 这个学生有许多班级,属于许多班级
  • 班级有很多学生,属于很多学生

    在这里,学生和班级都是直接相关的。学生通常参加许多课程,如物理、化学等,所以他们有很多课程。由于每堂课都有人值勤,所以学生分为许多班。 同样地,一堂课上有很多学生,所以这堂课上有很多学生。由于每个学生的出勤率都保持不变,因此班级属于许多学生

注意:

  • 如果两个类通过像约会这样的干预模型与多对多关系相关联,那么使用hasManyThrough
  • 如果两个类与多对多关系直接相关,则使用hasandbelongtomy

  • hasManyThrough
    只是一个定义了直通模型的
    hasMany
    关系。请参见中的
    参数至

    hasandbelongtomany
    本质上是通过双方的关系设置
    hasmany的快捷方式。如果未定义
    模型,它将连接两个模型名称并尝试按该名称查找模型,如果失败,它将尝试按该名称从表中提取关系()

    如果您定义了
    Assembly
    Part
    之间的
    hasandbelongtomy
    关系,它将在
    Assembly
    AssemblyPart
    之间以及在Part和AssemblyPart之间设置一对
    hasMany
    belongsTo
    关系。如果未定义
    AssemblyPart
    模型,它将尝试使用名为
    AssemblyPart
    的表(或集合,我猜如果是MongoDB,我主要是RDBMS的人)。它还将使用
    Assembly-Part
    作为贯穿模型(以便
    Assembly.parts
    可用)定义
    hasManyThrough
    Assembly
    Part
    的关系以及
    Part
    的对应关系


    我想说的是,您可以通过手动定义一个
    AssemblyPart
    模型,并将相应的
    hasMany
    belongsTo
    分别定义为
    Assembly
    Part
    模型和两个
    hasManyThrough
    :from
    组装
    零件
    和从
    零件
    组装

    解释得很好,好极了!这两种关系都需要联接表,对吗?实现上的差异是什么?