多租户如何覆盖默认值?

时间:2014-04-14 06:36:15

标签: mysql ruby-on-rails content-management-system multi-tenant

我开发了一个多租户CMS平台。在我的数据库中,我有一个名为样式的表,其中保存了布局和颜色。每个新租户都会获取样式的默认值,这些值保存在default_styling表中。我不想复制每个租户的默认值,只有当租户更改默认值时才会这样。

我使用MySQL和Ruby on Rails,如果租户没有自己的样式,那么我就不知道如何设计模型。知道如何解决这个问题吗?

1 个答案:

答案 0 :(得分:1)

取决于你的表结构, 如果有一个用户记录,你可以使用

select * from
 (
  select * from user_styling limit 1
  union all
  select * from default_styling limit 1
 ) tmp
limit 1

如果user_style中有记录返回记录, 如果没有,请从default_styling

中取记录