gpt4 book ai didi

python - 如何访问 GAE ndb Python 中的所有重复结构化属性

转载 作者:行者123 更新时间:2023-11-30 23:31:34 25 4
gpt4 key购买 nike

class X(ndb.Model): 
content = ndb.StringProperty()
number = ndb.IntegerProperty()

class P(ndb.Model):
unit = ndb.StructuredProperty(X, repeated=True)

使用数据存储查看器,我可以看到以下存储的数据:

Entity Kind             P 
Entity Key ag1kZXZ-bGlmZXN3YWxschoLEg1BZHZlcnRpc2VtZW50IGCAgICA4NcKDA
ID 6015428115566296
unit.content (list) [u'Apple', u'Coca Cola', u'Orange', u'Audi']
unit.number (list) [10L, 5L, 10L, 10L]

目标:访问不同的unit.content值(例如“Apple”等)

[我是GAE Python新手;所以如果问题太愚蠢请原谅]

我的(不成功的)尝试[我尝试了其他一些方法但没有成功]:

unitv_query = P.query() 
mv = unitv_query.fetch()
for a in mv.unit:
logging.info ("content=[%s]", a.content)

我收到以下错误:

    :: 
File "C:\learn\eg5.py", line 495, in render_unit

for a in mv.unit:

AttributeError: 'list' object has no attribute 'unit'

感谢任何帮助

最佳答案

unit 属性将是 X's 的列表,但是您循环了错误的内容你应该是这样的,

unitv_query = P.query() 
mv = unitv_query.fetch()
# mv is a list of P
for a in mv:

# now loop over each entity in unit property.
for i in a.unit:

logging.info ("content=[%s]", i.content)

在您的代码中,您尝试从 mv 访问单元,但是 mv 是 P 实体的列表 - 查询的结果,因此您无法访问 单位

关于python - 如何访问 GAE ndb Python 中的所有重复结构化属性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19829675/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com