4

我看到GAE为其entities提供了几种类型的电子邮件或PostalAddress。我读过他们没有提供任何验证。所以我想知道:使用它们而不是将数据存储在简单字符串字段上的好处是什么?任何理由我应该使用它们?建议使用GAE类型吗?

编辑:回答这个question

+1

可能重复的[App Engine - 为什么有PhoneNumber,Link,Rating等类?](http://stackoverflow.com/questions/1856126/app-engine-why-are-there-phonenumber-link-rating -etc-classes) – systempuntoout 2011-02-06 22:03:11

回答

1

目前他们的唯一目的似乎是他们无缝转换为Google使用的gdata原子提要。它们可能是在GoogleApps构建的框架上实施的并且包含在AppEngine数据模型中的字段。这样,如果你想制作一个与GoogleApps交互的应用,那就更容易了。

我也确定这些值是“正常化”正确的索引。 LinkProperty的值很可能从www.stackoverflow.com更改为com.stackoverflow.www。

2

我希望谷歌回答了这个。有猜测:

  • Python的docs谈论这些属性类型是如何在gdata表示。你能否从gdata feed实例化Email属性,然后将其设置在数据存储实体上?你的应用程序引擎应用程序(有一天)可以提供gdata风格的Web服务吗?
  • 也许Google启发了这些类型的存储需求,以帮助他们优化数据存储中的存储。
  • 也许他们会在以后的版本中为这些类型添加功能。
  • 也许他们喜欢打字打字的缘故。