Google App Engine NDB:需要在查询后获取()吗?

Ran*_*ang 3 google-app-engine app-engine-ndb

要在Google App Engine的NDB中检索实体,我需要在fetch()之后query()吗?例如:

account = self.request.get('account')
member = Member.query(Member.account==account).fetch()
if member:   
    # Account exists
else:        
    # Account does not exist
Run Code Online (Sandbox Code Playgroud)

我有两个问题:

  1. 如果.fetch()使用,则代码正确运行.但是,如果 .fetch()未使用,则测试始终为true,这意味着将检索某些实体.问题是什么?
  2. 通常,.fetch()如果我想在查询后检索所有实体,是否 需要使用?

Pet*_*ego 6

如果fetch()未使用,则将member = Member.query(..)Query类实例分配给member.所以你的if条件是真的.