我需要支持App Engine中的计算属性。我下载了最新的源代码版本以尝试自己实现它们。在浏览代码时,我遇到了一个似乎已经完全我需要的属性类。
class ComputedProperty(Property):
"""Property used for creating properties derived from other values.
Certain attributes should never be set by users but automatically
calculated at run-time from other values of the same entity. These
values are implemented as persistent properties because they provide
useful search keys.
...
"""
它没有证件的问题;我在官方文档中找不到关于ComputedProperty
的任何内容。
ComputedProperty
可以安全使用,还是有缺陷或/并且可能会发生变化?
答案 0 :(得分:7)
ComputedProperty
似乎是名为DerivedProperty
from Nick Johnson's blog的自定义属性类的“端口”(缺少更好的词)。
由于Nick的博客文章显示了创建自定义数据存储Property
课程是多么容易,我不会担心ComputedProperty
,因为您始终可以用Property
替换它如果需要,你自己的子类。
答案 1 :(得分:3)
这些已经发布并记录在案,至少对于NDB API来说是这样的:
https://developers.google.com/appengine/docs/python/ndb/properties#computed