2015-04-05 55 views
0

我需要存儲一個實體類型,我想通過它的鍵(例如它的用戶ID)和它的父鍵(例如userUID的adminUserID)查詢一次。這是可能的嗎?我可以對同一個實體類型使用簡單密鑰和祖先密鑰嗎?

我想使用userID作爲鍵創建一個鍵,然後添加adminUserID作爲父/祖先鍵。我仍然可以通過它的「簡單」鍵(userID)獲取實體,或者我始終需要從祖先鍵和用戶ID創建鍵?

+0

鑰匙總是由完整的祖先路徑組成。但是,http://stackoverflow.com/questions/12954899/ndb-retrieving-entity-key-by-id-without-parent可能會有所幫助。 – 2015-04-05 23:49:09

回答

1

一旦創建了一個密鑰,它就不能被改變,即你不能添加一個父對象到現有的實體(你必須刪除它並使用父鍵創建一個新的實體)。不過,只要您事先知道其ID,您就可以創建一個不存在的父項。

另請注意,如果子實體屬於不同的父母,子實體可能具有相同的自動生成的ID。

我不知道你的要求,但你最好用一個簡單的無父母實體,其中父母身份只是一個索引屬性。您可以隨時創建此類實體,隨時添加父標識,並通過id和/或parentId查詢這兩個實體。

相關問題