Как в Google App Engine создать модель с определенным идентификатором? - PullRequest
3 голосов
/ 25 января 2012

Я создал резервную копию всех сущностей для модели в файле CSV. Я восстанавливаю сущности на свой локальный dev_server и хотел бы воссоздать сущности с идентификатором в файле csv (аналогично тому, как это делает bulkloader). Как передать желаемый идентификатор для моей новой сущности в моем операторе создания?

playerID = 1234
player = Player(created = datetime.datetime(2012, 1, 25, 9, 20, 5, 757227), 
                nickname = u'chris', 
                email = u'chris@home.com')
player.put()

Что мне добавить в Player (), чтобы создать игрока с player.key (). Id () == 1234, когда я вызываю put ()?

1 Ответ

5 голосов
/ 25 января 2012

Сначала вам нужно выделить диапазон идентификаторов, используя allocate_id_range , чтобы зарезервировать идентификаторы для этих объектов.

А затем просто создайте ключ вручную и передайте его Player конструктор:

k = Key.from_path('Player', playerID)
player = Player(key = k, ...)
player.put()
...