-
Notifications
You must be signed in to change notification settings - Fork 146
Multi tenancy
wvengen edited this page Apr 29, 2014
·
10 revisions
Foodsoft has a multicoops feature, which allows different foodcoops to run on a single Foodsoft installation. This is generally called multi-tenancy. In the foodcoop configuration config/app_config.yml
the multicoops feature can be enabled with the multi_coop_install
parameter, giving each foodcoop its own configuration key.
This is called schema-based multi-tenancy, where each tenant (foodcoop) has its own database. There are pros and cons for both the schema- and role-based approach.
The multishared plugin brings role-based multi-tenancy to foodsoft, adding a scope
column to several models. This is far from polished, though.
Role-based multi-tenancy prepares the way to
- allow different foodcoops to work together, e.g. sharing orders;
- move users between foodcoops;
- extract statistics over multiple foodcoops (e.g. popular articles, turnover).
- there are multiple gems providing multitenancy, e.g. milia, acts_as_tentant
- Multi-tenanting Ruby on Rails Applications on Heroku
- Railscast on multi-tenancy with scopes (paid)