【问题标题】:webapp instances approachwebapp 实例方法
【发布时间】:2013-03-08 23:55:20
【问题描述】:

我想知道如何对 web 应用进行建模,以便同时为多个客户端提供服务,并像每个客户端的实例一样运行。
例如,如果我为客户提供基本的 erp 软件,并且我想提供此服务 给所有想通过自己的数据在线使用它的人...

我该怎么做?

我正在考虑一个主要的 web 应用程序,比如一个网关,用于登录用户并将他们路由到他们的 自己的 webapp,但是,真的需要这样的方法吗?用我的方法,我需要一个数据库吗? 客户?,也许这会是一团糟……

我可以申请什么其他方法来处理这种情况?

欢迎任何评论..

【问题讨论】:

  • 为什么不支持多客户端的数据库?即更新您的架构以支持许多客户端
  • 对于每个客户端的单个数据库是否有特定要求?每个客户端的 Web 应用的功能是否相同?
  • 每个客户端都有相同的功能,但每个客户端都可以拥有自己的数据集...
  • @SB.Im 谈论用户,对不起...我只是问,也许我真的对此感到困惑..

标签: django web-applications database-design architecture


【解决方案1】:

每个模型都可以轻松地拥有一个 user 字段,它是您的 User 模型的 ForeignKey。然后,每个模型实例都可以与一个用户相关联,每个用户将登录到具有单个数据库的单个 Web 应用程序。当然,您的视图必须随后处理过滤和验证对每个模型实例的访问:

class Resource(models.model):
    name = models.CharField(max_length=20)
    someattr = models.FloatField()
    user = models.ForeignKey(User)


def show_resources(request):
    resources = Resource.objects.filter(user=request.user)
    render_to_response("view.html", {'resources': resources})

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2016-08-30
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2022-01-22
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多