Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ruby-on-rails/52.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Css 允许在多个Rails应用程序上自定义主题_Css_Ruby On Rails_Ruby On Rails 3.2_Sass_Themes - Fatal编程技术网

Css 允许在多个Rails应用程序上自定义主题

Css 允许在多个Rails应用程序上自定义主题,css,ruby-on-rails,ruby-on-rails-3.2,sass,themes,Css,Ruby On Rails,Ruby On Rails 3.2,Sass,Themes,我有两个相同Rails应用程序的实例,我想在每个应用程序上允许一些自定义主题选项。例如,不同的标题颜色或列宽 我仍然希望保持相同的代码基础,所以我不能只更改每个代码的CSS,而且使用环境变量似乎不是一个好主意。我还希望保持资产管道的优化效益 我可以使用什么在应用程序的每个实例中实现轻松的主题定制 您可以创建多个清单文件,其中包含所需的任何部分文件。例如,您可以创建一个具有常见样式的core.css文件,然后创建blue.css、green.css等文件,您可以选择包括这些文件。这本书的灵感来源于

我有两个相同Rails应用程序的实例,我想在每个应用程序上允许一些自定义主题选项。例如,不同的标题颜色或列宽

我仍然希望保持相同的代码基础,所以我不能只更改每个代码的CSS,而且使用环境变量似乎不是一个好主意。我还希望保持资产管道的优化效益


我可以使用什么在应用程序的每个实例中实现轻松的主题定制

您可以创建多个清单文件,其中包含所需的任何部分文件。例如,您可以创建一个具有常见样式的
core.css
文件,然后创建
blue.css
green.css
等文件,您可以选择包括这些文件。这本书的灵感来源于,更多信息请查看


如果“自定义主题”是指用户可自定义,则只需使用存储应包含在应用程序中的清单文件的名称即可。但是,如果您这样做了,请不要忘记用户可以更改cookie,因此要小心注射

您可以为每个主题创建单独的布局

在app/views/layouts/theme\u one\u base.html.haml下

<html>
  <head>
    <%= stylesheet_link_tag "application" %>
  </head>
  <body id='theme_one'>
    <%= yield %>
  </body>
</html>
<html>
  <head>
    <%= stylesheet_link_tag "theme_one" %>
  </head>
  <body>
    <%= yield %>
  </body>
</html>
清单文件
theme\u one.css.scss
包含

/**
*= require_self
*= require_tree ./theme_one
*/
您将更新
base\u layout.html.haml

<html>
  <head>
    <%= stylesheet_link_tag "application" %>
  </head>
  <body id='theme_one'>
    <%= yield %>
  </body>
</html>
<html>
  <head>
    <%= stylesheet_link_tag "theme_one" %>
  </head>
  <body>
    <%= yield %>
  </body>
</html>

基本上,每个基本布局都包含自己的一组独立样式表

更新1-添加有关覆盖布局的信息