gpt4 book ai didi

python - GAE NDB 访问结构化重复列表中的子实例(字段)

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

我在访问结构化列表中的实例时遇到困难。
以下是我的结构化列表:

class FavFruits(ndb.Model):
fruit = ndb.StringProperty()
score = ndb.IntegerProperty()
comment = ndb.TextProperty()

class UserProfile(ndb.Model):
uid = ndb.StringProperty(required=True)
password = ndb.StringProperty(required=True)
firstName = ndb.StringProperty(required=True)
favFruits = ndb.StructuredProperty(FavFruits, repeated=True)

我想在 FavFruits 实体下显示 score

我尝试了UserProfile.favFruits.score,但没有成功。

我还尝试了UserProfile.favFruits[index].score,它有效,但现在需要循环,我想避免它。

最终,我想做以下逻辑:

  1. 如果 UserProfile.uid == userEntering 则用户输入水果名称

  2. 如果 UserProfile.favFruits.fruit == FruitName(用户输入),则显示用户指定的 UserProfile.favFruits.fruit 的 UserProfile.favFruits.score 和 UserProfile.favFruits.comments。

  3. 最后,我想显示用户输入的所有水果/分数。假设用户输入“apple”和“orange”作为水果名称,然后我想循环,例如(沿着这一行):

代表水果名称中的 x
打印 x
打印 UserProfile.favFruits.score.query(UserProfile.favFruits.fruit == x)

这可能吗?看似微不足道的任务,但我无法弄清楚......

提前谢谢您!

最佳答案

您的要求是矛盾的。如果您不想循环,请不要使用repeated=True。但这样一来,您将无法为每个实体存储多个实体。没有循环或索引就不可能拥有多个内容。

关于python - GAE NDB 访问结构化重复列表中的子实例(字段),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22982354/

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