我正在尝试使用为 Android 和最终的 ios 应用程序创建一个 Python 端点来将数据存储在数据存储中,但我无法理解它们是如何组合在一起的。
我知道我想要 3 个实体User
、Event
和Message
。在我的应用程序中,我希望能够查询、插入和更新User
. 事件将作为User
实体的“更新”处理。然后我还希望能够查询和插入上述消息,User
这就是我不GCM
专门使用的原因。
我的User
实体目前看起来像这样:
class User(ndb.Model):
email = ndb.StringProperty()
first_name = ndb.StringProperty(indexed=False)
last_name = ndb.StringProperty(indexed=False)
prof_pic = ndb.BlobProperty(indexed=False)
status = ndb.StringProperty(indexed=False)
location = ndb.StringProperty(indexed=False)
friends = ndb.StringProperty(repeated=True, indexed=False)
repeating_events = ndb.KeyProperty(repeated=True, indexed=False)
non_repeating_events = ndb.KeyProperty(repeated=True, indexed=False)
我的Event
实体如下所示:
class Event(ndb.Model):
start_time = ndb.StringProperty()
end_time = ndb.StringProperty()
color = ndb.StringProperty()
isRepeating = ndb.BooleanProperty()
我的Message
实体看起来像这样:
class Message(ndb.Model):
message_to = ndb.KeyProperty()
message_from = ndb.KeyProperty()
text = ndb.KeyProperty()
我想我对 an应该如何工作有一个很好的理解datastore
和一般的理解。endpoint
我之前用 Java 编写过一次,但由于 Java 的启动时间慢和普遍存在错误,我决定使用 Python AppEngine
。话虽如此,我很难理解这一切如何与我的 android 应用程序结合在一起,因为我对 Python 不是很有信心。
在提供的示例滴答声应用程序中,他们使用了ProtoRPC
消息传递库,我认为在和之间进行通信endpoint
,datastore
但我根本不明白它是如何工作的,并且实际上不能让我的适应没有错误,因为User
包含一个列表的User
。
我的问题是是否、为什么、在哪里以及如何使用 ProtoRPC 库。