收藏
回答

数据模型的关联关系要的“新”和“旧”如何区别?如何建立?

文档里的似乎有二种关联关系建立的方法,一种是“新”,一种是“旧”。如果当前操作界面里使用关联字段算是“旧”,那这里的“新”怎么建立?

文档前面提到“关联模型”,这个在界面上也没有啊?

-----------------------------------------------------------------------------

补充一下,为什么要问这个问题:

我有3个表,表A,表B,表C,表A包含2个关联字段b,c,其中b关联表B,c关联表C。那么在api里用代码进行查询A:

const result = await context.callModel({
    name: 'A_name', 
    methodName: 'wedaGetRecordsV2', // 数据模型方法标识
    params: {
      filter: {
        where: { // 主表查询
          $and: ...
        }//.where
      },//.filter
      // 返回字段选择
      select: {
          $master: true, // 返回主表中的字段
            b: true, // 返回关联表B内容    
               c:true // 返回关联表C内容    
          },//.select
          compatibleWithV1: true//如果不加这句,无法返回关联表的内容。
        }//.params
      });


1.如果不加"compatibleWithV1: true",就只能返回表B和C的标识_id,而没有其它字段;这个和文档里说的完全不一样。

2.就算我加了"compatibleWithV1: true"这段,如果加入了关联查询relateWhere,那么结果b和c却只能返回c表内容,b也只是返回_id,这个和文档说的也不一样,如:

const result = await context.callModel({
    name: 'A_name', 
    methodName: 'wedaGetRecordsV2', // 数据模型方法标识
    params: {
      filter: {
        where: { // 主表查询
          $and: ...
        }//.where
            relateWhere:{ // 关联表查询
          b:{ // 支出表中的关联字段
            where:{
              $and: ...
            }
          }
        }//.relateWhere
      },//.filter
      // 返回字段选择
      select: {
        $master: true, // 返回主表中的字段
        b: true, // 返回关联表B内容    
           c:true // 返回关联表C内容    
      },//.select
      compatibleWithV1: true//如果不加这句,无法返回关联表的内容。
    }//.params
});


所以,我想知道问题出在哪儿?是因为我碰到了“新”模型的bug问题?还是“旧”模型的旧问题?

最后一次编辑于  2023-10-07
回答关注问题邀请回答
收藏

2 个回答

  • 韩锴
    韩锴
    2023-10-07

    使用上影响不大,你新建的表录入数据后就是使用新版本

    2023-10-07
    有用
    回复 2
    • 雷神
      雷神
      2023-10-07
      我在问题了补充了一下,帮我看下,多谢
      2023-10-07
      回复
    • 韩锴
      韩锴
      2023-10-10回复雷神
      如果怀疑是产品的BUG,联系一下售后看一下问题
      2023-10-10
      回复
  • 跨商通
    跨商通
    2023-10-07

    具体开发问题是什么?

    2023-10-07
    有用
    回复 1
    • 雷神
      雷神
      2023-10-07
      我在问题了补充了一下,帮我看下,多谢
      2023-10-07
      回复
登录 后发表内容
问题标签