App Engine - 为什么有PhoneNumber,Link,Rating等课程?

Ric*_*son 10 google-app-engine google-cloud-datastore

我还没有发现任何App Engine类存在的原因.有一个PhoneNumber,一个Link,一个PostalAddress,一个GeoPt,一个等级等等.为什么这些给予特殊待遇?他们似乎没有任何智慧 - 例如地理搜索.我知道Link比String属性有更多的空间,但其余的?

请参阅:http: //code.google.com/appengine/docs/java/datastore/dataclasses.html

Nic*_*son 7

这些类型是"语义"类型.它们存在于Java API中,与Python API保持一致.在Python API中,它们定义了与.to_xml()方法相关的特殊行为 - 例如,PhoneNumberProperty序列化如下:

<property name="foo" type="gd:phonenumber"><gd:phoneNumber>12345-678</gd:phoneNumber></property>
Run Code Online (Sandbox Code Playgroud)

  • 我个人也不会打扰他们.据我所知,查询根本不使用这些类. (2认同)
  • +1说什么尼克说.数据存储区中的语义类型是应用引擎开发早期的一个重点,但它后来变得不那么重要了.当我们推出时,它是一个小小的好东西,而不是更多. (2认同)