Jed*_*sen 2 python google-app-engine google-cloud-datastore
我正在使用App Engine,SDK 1.6.3和Python 2.7.
我创建了这样的模型:
class MyModel(db.Model):
name = db.StringProperty()
website = db.StringProperty()
Run Code Online (Sandbox Code Playgroud)
我可以迭代并查看除Key id之外的所有内容.例如,在交互式shell中我可以运行:
from models import *
list = MyModel.all()
for p in list:
print(p.name)
Run Code Online (Sandbox Code Playgroud)
它会打印每个实体的名称.但当我运行这个:
from models import *
list = MyModel.all()
for p in list:
print(p.key.id) [or p.key.name or p.key.app]
Run Code Online (Sandbox Code Playgroud)
我得到一个AttributeError:
Traceback (most recent call last):
File "/Applications/GoogleAppEngineLauncher.app/Contents/Resources/GoogleAppEngine-default.bundle/Contents/Resources/google_appengine/google/appengine/ext/admin/__init__.py", line 317, in post
exec(compiled_code, globals())
File "<string>", line 4, in <module>
AttributeError: 'function' object has no attribute 'id'
Run Code Online (Sandbox Code Playgroud)
谁能帮帮我吗??
key()和id()是实例方法.尝试用括号:
for p in list:
print(p.key().id())
Run Code Online (Sandbox Code Playgroud)
请参阅文档.
| 归档时间: |
|
| 查看次数: |
5121 次 |
| 最近记录: |