我的rails应用程序有3个主要布局。我想保持这3个布局在资产(图像,javascript,css)方面与每个布局分开。
如何整理资产以使其分开?
如果我只在资产中创建3个文件夹,是否有任何缺点? 我应该在每个图像,javascript和样式表中创建3个文件夹吗?
/assets/layout1/{images, javascripts, stylesheets}
/assets/layout2 ..
/assets/layout3 ..
或
/assets/images/layout1
/assets/images/layout2
..
/assets/javascripts/layout1
/assets/javascripts/layout2
..
我的控制器正在这样做:
class Layout1Controller < AC
layout "layout1"
class Layout1Controller < AC
layout "layout2"
但问题是所有的javascript和css等都会在每个页面上呈现。 如何将它们分成3个单独的文件?或者这在使用资产管道时是不可能的?
答案 0 :(得分:2)
查看官方指南的2.2.1 Search Paths段(The Asset Pipeline):
默认位置为:
images
,javascripts
和stylesheets
app/assets
文件夹下的目录,但这些子目录是 不特别 - 将搜索assets/*
下的任何路径。
所以这两种方法都是可以接受的,而且我认为使用哪种方法是个人偏好的问题。
就个人而言,第二种方法对我来说更清楚,无论哪种方式,你最终都会在每个images
目录中复制结构(stylesheets
,javascripts
,layout
或layout
内的每个images
等。)