我试图通过一个函数生成一些模拟数据,基本上是一个" Department"和"员工"顶点。
以下是代码:
var employees = gdb.command('sql', 'select * from Employee', []);
var departments = gdb.command('sql', 'select * from Department', []);
for (var i = 0; i < employees.length; i++) {
var emp = employees[i];
var department = departements[Math.round(Math.random()*(departements.length - 1))];
var e = "create edge employee_belong_dpartement from #" + emp['@rid'] + " to " + department['@rid'];
gdb.command('sql',e, []);
}
gdb.commit();
有人可以解释一下为什么我无法让它发挥作用吗?
当我记录emp [&#39; @ rid&#39;]我什么也得不回来时,我似乎无法阅读&#34; id&#34;或任何其他价值。 请帮助我理解控制台中发生的事情,因为它难以调试,谢谢
答案 0 :(得分:1)
员工包含ODocument对象,因此要提取字段,您应该使用.field()方法。获取标识ODocument具有.getIdentity()方法。例如:
var e = "create edge employee_belong_dpartement from #" + emp.getIdentity() + " to " + department.getIdentity();
LVC @