1

It seems that db.Key and ndb.Key instances are not the same.

I have a db.Key instance. How do I convert it to an ndb.Key?

This is what I'm trying to do:

NDBEntity(ndb.Model):
  some_property = ndb.StringProperty()

DBEntity(db.Model):
  some_property = ndb.StringProperty()

# I have an instance of a DBEntity already saved in the datastore
db_entity_instance = DBEntity.all().get()

ndb_entity_instance = NDBEntity(id="some_id", parent=db_entity_instance.key(), some_property="foo").put()
# The above line doesn't work because it expects a Key Instance for the parent, and it doesn't seem to recognize a db.Key instance.

Any ideas?

4

2 に答える 2

4

DB キーを NBD キーに変換するには、次のことを行う必要があります。

ndb.Key.from_old_key(your_old_DB_key) 

さらに変換するには、NDB Cheet Sheet を 参照してください。

于 2013-12-31T10:33:58.707 に答える
3

「古い」db.Key から新しい ndb.Key に変換する必要があります。詳細については、NDB キー クラスを参照してください。

于 2012-12-06T10:21:43.263 に答える