2012-09-02 92 views
2

是否可以在不更改实体密钥的情况下更新实体的祖先?我将如何在Go中完成?更新数据存储实体 - 更改祖先而不更改实体密钥

我有一个层次结构与此类似:

公司/部门/员工

它开始了与任何部门的员工:公司/雇员。 然后,当他/她被分配到一个部门时,我想将其更改为:公司/部门/员工,但我希望实体关键字保持不变,因为它已在别处用于引用此实体。

回答

3

是否可以在不更改实体键的情况下更新实体的祖先?

我不这么认为。祖先是关键的一部分。

我该如何在Go中完成?

您是否需要在此使用实体组?我尽可能地避免实体组。他们添加了太多限制。我建议你添加属性为公司和部门的雇员实体:

type Employee struct { 
    Company, Department string 
} 

您仍然可以通过这些属性查询,虽然有可能是几秒钟的延迟它们被更新后。如果您需要强大的一致性,您可以随时按键查找员工。这将始终返回最新的版本。

+1

正确的是,您不能在不更改密钥的情况下更改祖先。 –