您也可以为每个主题设置不同的布局。虽然它不是非常干燥,但为了减少负面变化的影响,应用程序模块可以分离一些代码。类似于Fragile base class问题的东西。
我会利用index
manifest并将您的app/assets
组织成分离模块。以下结构属于我目前正在开发的一个项目。 比方说,你的应用程序组成了三个模块组成:公共端,管理员UI和,例如CRM让你的代理跟踪销售过程,在您的公司:
app/assets/
├── coffeescripts
│ ├── admin
│ │ ├── components
│ │ ├── index.coffee
│ │ └── initializers
│ ├── application
│ │ ├── components
│ │ ├── index.sass
│ │ └── initializers
│ └── crm
│ ├── components
│ ├── index.sass
│ └── initializers
├── images
│ ├── admin
│ ├── application
│ └── crm
└── stylesheets
├── admin
│ ├── components
│ └── index.sass
├── application
│ ├── components
│ └── index.sass
└── crm
├── components
└── index.sass
21 directories, 6 files
你可以让每一个模块主题,可能还有core_theme
包含常见的样式表,图像和最终的JS组件。
要么你选择一个单一的共享布局,你可以添加下面的代码将会引导你进入更有序的代码库和正确的预编译生产资源。
= stylesheet_link_tag 'theme_a'
= javascript_include_tag 'theme_a'
不要忘记更新您的application.rb
所以他们将被正确预编译:
config.assets.precompile = %w(admin.js application.js crm.js
admin.css application.css crm.css)
谢谢。不知道他只是在检查application.js和application.css – SteenhouwerD