2012-03-31 77 views
0

我正在將應用程序遷移到高度複製數據存儲。我的理解是這樣的,我只需將數據複製到啓用HRDS的新應用程序,即使用Datastore Admin在App Engine中遷移key.id列表

但是,我的應用程序有一些實體通過其key.id鏈接到其他實體。

posts = db.ListProperty(int) 

當我遷移應用程序時,對象的ID可能會改變,不是嗎?我如何確保這些列表仍然正確鏈接?

+0

請勿使用複製工具,請使用您可以在「應用程序設置」頁面中找到的專用遷移工具。 – 2012-03-31 11:44:21

回答

1

使用數據存儲區遷移工具(如Daniel所示),現有實體ID將被保留。

雖然你確實應該使用鍵列表而不是ID。

+0

但是,在這種情況下,如果我使用了密鑰的「StringList」這些鍵會改變,因爲AppID是鍵的一部分,對嗎?或者遷移工具是否也考慮到了這一點?爲什麼使用鍵更好?它是考慮到多個應用程序/命名空間? – noio 2012-03-31 12:18:09

+0

@Noio如果您使用字符串化的鍵,則不會更改appid,因爲遷移過程無法知道它們是鍵。你應該使用一個Key對象列表(例如'db.ListProperty(db.Key)'。 – 2012-03-31 17:22:20

+0

哦,對了!當然,我確實想知道爲什麼我沒有這樣做。我將遷移到HR,然後切換到'db.Key'列表。謝謝。 – noio 2012-04-01 13:09:39

相關問題