动态SASS生成

时间:2012-08-07 12:11:35

标签: ruby-on-rails sass multi-tenant

我正在开发一个多租户应用,我希望每个租户都能控制特定元素的颜色。例如,我的成像有一个带有颜色选择器的表单,用户可以控制诸如站点背景颜色,导航栏颜色等项目。

我有一个基线SASS(.scss)文件,用于设置默认颜色方案。我的问题是:

  1. 我如何加载“动态”主题.scss文件?
  2. 如果我有像Tenant.nav_bar_link_color这样的模型字段,我该如何将这些值加载到SASS主题文件中?
  3. 我是否可以/我应该以某种方式将租户特定主题预编译到资产管道中?

2 个答案:

答案 0 :(得分:0)

您可以将类添加到主应用程序的body元素中。这可能就像

<body class="">

然后以编程方式将“scheme-red”或“scheme-blue”等类添加到此body元素中,方法是根据主题选择。

在你的SASS中你会有不同的颜色方案覆盖默认值。

答案 1 :(得分:0)

经过一番研究,我认为这里的方法大纲最有意义:

User generated custom css

基本上我会将租户控制的CSS值存储在数据库中,然后在头部渲染它们以覆盖我的默认SASS文件....