【发布时间】:2012-02-03 03:33:14
【问题描述】:
我正在创建一个用于学习目的的小型 saas...我知道最好的方法是为每个用户设置一个单独的架构...但是我的 saas 是一个小型应用程序,我真的不需要单独的架构加上它会使事情复杂化(以后对架构进行更改)......所以我将为所有用户使用相同的架构,只需将每个用户的 ID 附加到条目,然后在登录时仅显示用户的条目。
有没有办法在通过中间件登录时“添加”用户 ID?还是我需要调整所有查询(按用户 ID 过滤)?我已经将用户的 ID 存储到他的条目中......所以我只需要这个来选择。
谢谢!
【问题讨论】:
-
我不知道有什么方法可以根据 request.user 自动过滤查询集。这是因为 ORM 没有与 django.contrib.auth 耦合。我做了两种 SaaS 设计,一个数据库用于所有查询集并手动过滤所有查询集(没有 django.contrib.admin),一个每个用户一个数据库,这使得启用 django.contrib.admin 变得容易(也使用 admindoc 和 django-数据库模板)。我更喜欢后者,尽管它涉及系统管理的更多工作。
-
@jpic:请将您的答案作为答案发布,以便我们对其进行投票和评论。