Rails 3.1 资产管道供应商/资产文件夹组织

Posted

技术标签:

【中文标题】Rails 3.1 资产管道供应商/资产文件夹组织【英文标题】:Rails 3.1 asset pipeline vendor/assets folder organization 【发布时间】:2012-02-04 12:59:29 【问题描述】:

我在我的 Rails 3.1 站点中使用 jQuery Tools 可滚动库,并将各种资产放置在 vendor/assets 文件夹中,效果很好。

我的问题是关于在供应商/资产下组织各种文件的最佳方式。组织供应商/资产子文件夹的推荐方法是什么?目前我有这个结构:

vendor/assets/
 |-- images/
 |    |-- scrollable/
 |          <various button/gradient images>
 |-- javascripts/
 |    |-- scrollable/
 |          jquery.tools.min.js
 |-- stylesheets/
 |    |-- scrollable/
 |          scrollable-buttons.css
 |          scrollable-horizontal.css

这是一个相当不干的事情。我觉得所有“可滚动”项目都应该在一个文件夹下。

在不操纵资产管道加载路径的情况下,推荐的方法是什么?

谢谢!

【问题讨论】:

不过,它有一个好处。您所有的图像、样式表和 javascript 都分组在它们自己的文件夹中,而不是分散在十几个插件中。 一个插件在多个目录下很难管理。删除或更新它会很痛苦。 【参考方案1】:

你可以用这种方式组织它们,这会稍微好一点,因为它将与插件相关的东西保存在一个目录中:

vendor/assets/scrollable
 |-- images/
 |    |-- <various button/gradient images>
 |-- javascripts/
 |    |-- jquery.tools.min.js
 |-- stylesheets/
 |    |-- scrollable-buttons.css
 |        scrollable-horizontal.css

我很确定这会起作用,因为 rails 会覆盖 assets/ 下的所有目录。

【讨论】:

我这辈子都做不到。我已经像这样构建了我的供应商/资产,但是当我执行以下操作时: //= require scrollable/jquery.tools.min 我收到 Sprockets::FileNotFound 错误。我还需要什么? 尝试在路径中添加javascripts 查看这个答案:***.com/questions/8798646/…

以上是关于Rails 3.1 资产管道供应商/资产文件夹组织的主要内容,如果未能解决你的问题,请参考以下文章

用于 JavaScript 的 Rails 3.1 资产管道

Rails 5 - 如何在资产管道中包含所有供应商资产?

Rails 3.1 资产管道和缓存

开发中的 rails 3.1 资产管道 css 缓存

Rails 3.1 资产管道:如何加载特定于控制器的脚本?

使用 Rails 3.1 资产管道有条件地使用某些 css