- c - 在位数组中找到第一个零
- linux - Unix 显示有关匹配两种模式之一的文件的信息
- 正则表达式替换多个文件
- linux - 隐藏来自 xtrace 的命令
我可以在 AppEngine 领域使用一些帮助...
使用 [Python] API,我从文档中创建如下示例的关系:
class Author(db.Model):
name = db.StringProperty()
class Story(db.Model):
author = db.ReferenceProperty(Author)
story = db.get(story_key)
author_name = story.author.name
据我了解,该示例将进行两个数据存储区查询。一个用于获取故事,然后一个用于尊重作者以访问名称。但我希望能够获取 id,所以执行以下操作:
story = db.get(story_key)
author_id = story.author.key().id()
我想只是从引用中获取 id。我不想必须尊重(因此查询数据存储)ReferenceProperty 值。
从阅读文档中可以看出
the value of a ReferenceProperty is a Key
这让我想到我可以只对引用的值调用 .id() 。但它也说:
The ReferenceProperty model provides features for Key property values such as automatic dereferencing.
我找不到任何解释何时引用发生的内容?
对 ReferenceProperty 的值调用 .id() 是否安全?
是否可以假设调用 .id() 不会导致数据存储查找?
最佳答案
为了帮助其他搜索者而回答我自己的问题...
怀疑调用 story.author.key().id() 甚至 story.author.id() 将导致数据存储查询。正确方法dictated by the API docs是:
story = db.get(story_key)
author_id = Story.author.get_value_for_datastore(story).id()
关于python - 仅从 App Engine 中的 ReferenceProperty 获取 Key/id,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3044121/
在我当前的项目中,我有两个模型,版本和评论。两者之间是一对多的关系;每个Version可以有很多Comment,Comment模型有一个ReferenceProperty来记录它属于哪个Version
这是 my previous question 的后续内容。 我使用 ReferenceProperty 设置模型: class User(db.Model): userEmail = db.
我正在尝试了解数据存储中的一对多关系;但我无法理解当模型包含 ReferenceProperty 时如何查询和更新用户记录。假设我有这个模型: class User(db.Model): us
我有一个要存储在内存缓存中的实体列表。这问题是我有他们引用的大型模型ReferenceProperty 也自动存储在内存缓存中。结果,我超出了存储在中的对象的大小限制缓存。 是否有可能阻止 Refer
在 gae 平台上构建了一些应用程序之后,我通常在基本上每个应用程序的数据存储区中使用不同模型之间的一些关系。而且我经常发现自己需要查看同一父项的记录(例如将所有条目与同一父项匹配) 从一开始我就使用
我正在使用谷歌应用引擎,但在编写查询来过滤 ReferenceProperties 时遇到了问题。 例如。 class Group(db.Model): name = db.StringPro
我有一个 AppEngine 应用程序,我正在考虑升级它以使用 NDB 数据库。 在我的应用程序中,我有数百万个具有旧式数据库引用的对象。我想知道将这些 ReferenceProperty 值转换为
我认为这对 Python 来说是微不足道的,但相当新。 我正在尝试使用谷歌应用引擎创建模型。 基本上是从E/R的角度我有 2 个带有连接表的对象(连接表捕获连接的时间点)像这样 Person
是否可以通过db.ReferenceProperty引用self,是否可以构造一个列表? 例如,我有一个 User 类,我想为他/她的 friend 提供一个引用 User 类的属性? 我目前正在使用
有没有办法在不取消引用它指向的实际实体的情况下获取 db.ReferenceProperty 的键(或 ID)值?我一直在研究 - 看起来 key 存储为属性名称前面有一个 _,但我无法让任何代码工作
我有一个设计问题是 BlobReferenceProperty 基本上是 ReferenceProperty?我应该像 ReferenceProperty 那样进行预取(由 Nick http://b
我遇到了一个无法找出根本原因的错误。错误如下:“无法解析 ReferenceProperty:[u'StatusLog',STATUSLOGSID]”。此错误仅偶尔发生,大约一天一次或两次。生成此错误
这段看似完美的 Google App Engine 代码失败并出现 KindError。 # in a django project 'stars' from google.appengine.ext
我希望能够在给定数据存储中模型的 key 的情况下,简单地设置引用属性而不加载模型本身(因为我不需要该信息)。 例如: class Book(db.Model): author = db.St
我在 App Engine (Python) 中遇到 ReferencePropertys 的问题。 为了找点乐子,我正在尝试为文件夹/文件系统建模,但在获取文件夹到引用文件夹时遇到了问题。 我的第一
假设我们有以下模型。 class User(db.Model): username=db.StringProperty() avatar=db.Referenc
如果我在 Python (+ Django) App Engine 应用程序中有以下模型: class Album(db.Model): private = db.BooleanProperty(
在我的 App Engine 应用程序(在 Python 2.7 中,线程安全)中,我希望能够显示关于我的 ChildModel 类型的所有实体的信息。我想我已经让内存缓存正常工作,但是因为 Chil
我目前正在测试我编写的一个小应用程序。我没有足够小心地确保我的数据存储中的数据是一致的,现在我有一个问题,我有一些记录引用不再存在的对象。更具体地说,我有一些具有已分配值的 ReferenceProp
我使用以下代码将我的 appengine 数据存储区序列化为 JSON class DictModel(db.Model): def to_dict(self): return
我是一名优秀的程序员,十分优秀!