1
我有像下面這樣的模型結構:我正在使用最新的python SDK for谷歌應用程序引擎。如何從結構化屬性中刪除實體 - python GAE?
class Address(ndb.Model):
type = ndb.StringProperty() # E.g., 'home', 'work'
street = ndb.StringProperty()
city = ndb.StringProperty()
class Contact(ndb.Model):
name = ndb.StringProperty()
addresses = ndb.StructuredProperty(Address, repeated=True)
guido = Contact(
name='Guido',
addresses=[Address(type='home',city='Amsterdam'),
Address(type='work', street='Spear St', city='SF')]
)
guido.put()
我使用
addresses = Contact.query(Contact.name=="Guido").get().addresses
for address in addresses:
if address.type == "work":
# remove this address completely
pass
從這個guido
模式,我想刪除「工作」地址圭多模型得到的地址。這也應該在聯繫人和地址模式中刪除。我該怎麼做呢。在這種情況下,實體鍵將在運行時自動分配。
它會從數據庫(從地址模型)中刪除「工作」地址嗎? – sengottuvel 2015-02-11 18:03:47
地址不單獨保存,它存儲在聯繫人實體內。我更新了答案,並參考了關於此問題的文檔。 – 2015-02-11 18:15:16
是否可以使用StructuredProperty來包含一個實體?(因爲地址在這裏不是一個真正的實體) – sengottuvel 2015-02-11 18:44:10