1

我希望得到一些关于在 Google AppEngine 上开发多租户 Django 项目的最佳方法的建议。

需要考虑的一些想法。

  • 我认为使用 djnago.contrib.sites 是必须的。

  • 我想使用现有的应用程序,例如 django-profiles 和 django-registration,我知道他们的模型需要移植。

  • 是否可以将多个域指向 GAE 应用程序并从请求标头中自动选择站点?

  • 如果不是多个域,有没有办法说接受请求说 www.example.com/tenantA/login 和 www.example.com/tenantB/login 并将它们推送到一个视图但使用知识 Tennant 而不更改所有视图,也许使用自定义管理器来隐藏视图的复杂性。

通常希望这将是对您过去采取或计划采取的任何方法的讨论。

期待任何评论/答案。

问候

标记

4

2 回答 2

2

我可以为你回答 App Engine 的问题,虽然我不知道 Django 的问题:

  1. 是的,任何人都可以使用 Google Apps 将域指向您的应用程序,使用“添加服务”选项,在出现提示时输入您的应用程序 ID。然后,您可以检查“主机”标题以确定您要使用的站点。
  2. 您可以通过使用钩子在实体和查询中自动插入主机来隐藏每个租户的信息:http ://code.google.com/appengine/articles/hooks.html
于 2009-09-17T19:41:21.030 回答
1

今天,Google 发布了 SDK 1.3.6,其中包含直接融入解决方案的多租户。

http://googleappengine.blogspot.com/2010/08/multi-tenancy-support-high-performance_17.html

于 2010-08-18T22:02:09.253 回答