我正在为一个国际大品牌设计一个g+应用程序。我需要创建的实体几乎都是图形的形式,因此有许多多对多关系(圆弧)连接节点,可以在两个方向上遍历。我在网上阅读所有可读的文档,但是到目前为止我还没有找到任何特定于ndb设计最佳实践和指南的内容。不幸的是,我是在保密协议下,不能透露应用程序的细节,但它可以几乎一对一地匹配科学会议的背景与会议记录,作者,论文和主题。在
以下是迄今为止设想的实体列表(根据所提到的主题改变上下文):
如您所见,我可以访问并遍历图形的任何方向(或方面,从前端的角度来看):
以此类推,你来填单子。在
我想把它说得直截了当,因为它会在发布时有大量的公关费用,而且在内容和用户数量上都需要不断地扩展。我想从头开始编写代码,从而设计我自己的模型,restfulapi来读/写这些数据,避免非rel-django,并将表示层保持为最小的模板机制。我需要和我工作的公司核实一下,但是我们也许可以用一个像样的开源许可证(理想情况下,是ndb模型的restful服务)来发布部分代码。在
如果有人能给我指出正确的方向,那就太棒了。在
谢谢! 托马斯
[编辑:更正了与多对多关系相关的打字错误]
经过深入研究,发现:
欢迎任何其他更详细的答复
在appengine中有两种实现一对多关系的方法。在
在实体A中,存储实体B1、B2、B3的键列表。在旧数据库中,可以使用数据库键. 在ndb中,您将使用带有repeated=True的KeyProperty。
在实体B1、B2、B3中,将KeyProperty存储到实体a。
如果使用1:
如果使用2:
相关问题 更多 >
编程相关推荐