2

如果有更多经验丰富的人可以帮助我,我将不胜感激。我正在尝试通过以下方式在 2 个不同的列表之间应用约束引用:

list company{
    key company-id;
    leaf company-id {
        type yang:uuid;
    }
}

list employee {
   key employee-id;
   leaf employee-id {
       type yang:uuid;
    }
    leaf company {
     type leafref {
         path "/company/company-id"; 
     }
  }
}

我正在使用 RESTCONF api 执行一些测试,如果未创建相关公司,我想检查是否可以避免 POST 命令,以便创建新员工。我的意思是,我想使用一个 yang 模型并在两个列表之间包含一个引用约束。

我尝试使用“必须”声明如下:

must "boolean(/company[company-id=current()]"

但那次尝试没有运气。

提前致谢。最好的祝福

4

1 回答 1

1

我找到了让它工作的方法。如果您希望模型的一个列表具有与其他第二个列表的外键引用,则必须在列表的键中包含 Leafref 类型的字段。使用我之前的问题的例子:

有下一个列表:

list company{
    key company-id;
    leaf company-id {
        type yang:uuid;
    }
}

如果您想在模型中包含取决于公司 ID 的其他列表,您必须使用下一个键声明它:

list employee {   
  key "employee-id company";    

   leaf employee-id {
       type yang:uuid;
    }
    leaf company {
     type leafref {
         path "/company/company-id"; 
        } 
   }
 }

注意第二个列表的key:

关键“员工身份证公司”;

我已经对其进行了测试,并且它可以正常工作。

无论如何,感谢阅读我的问题的人。

干杯,朱利安

于 2015-11-10T08:50:16.020 回答