2012-11-21 23 views
1

我需要获取每行的行ID,以便我可以使用它作为主键。 这是我在做什么使用python获取数据库中每一行的行ID /密钥google appengine

qr = MoreGames.query() 
    res = qr.fetch() 
    if res: 
     data = [] 
     for row in res: 
      d = {'id':row.key().id(),'title':row.title,'description':row.description,'link':row.link} 
      data.append(d); 

每当我使用row.key()。ID()它给了我 '500内部服务器错误'。

+0

你试过打印行吗?或dir(row)? –

+0

'db'或'ndb'?你需要包含完整的回溯。 – aschmid00

回答

4

使用.query()建议你使用NDB而不是DB,在这种情况下,“key”是一个属性,而不是方法,那么:

row.key.id() 

拿到钥匙的ID部分。

+0

惊人的:)为我工作。谢谢! – Imran

+0

res = DB.get_by_id(game_id)如何使用此ID返回数据? – Imran

+0

我得到这个错误: AttributeError:'function'对象没有属性'id' – Ashkan

0

尝试调试。

很有可能您的钥匙有名称而不是ID。尝试id_or_name()而不是id()。

相关问题