有谁知道如何在Rails 3.1中向资产管道添加另一个文件夹?
我想以 app/assets/images
服务 app/assets/images
服务 app/assets/fonts
.
Update: 5-7-2013
只是为将来发现此问题以明确添加资产路径的人添加一些说明,在application.rb文件中:
config.assets.paths << "#{Rails.root}/app/assets/fonts"
但是,由于上面的路径在 app/assets
之下,你不必明确地添加它,你只需要重新启动rails应用程序,这样Sprockets就可以把它拿起来 .
您将必须显式添加 app/assets
, lib/assets
或 vendor/assets
之外的路径,并且只记得当Sprockets在您的应用程序加载时在文件夹中拾取新文件时,根据我的经验,它不会拾取新的文件夹 . 没有重启的资产路径 .
6 回答
安德鲁,
app/assets/fonts
实际上已经在您的资产加载路径中,以及images
. 因此,您可以以相同的方式指向资产:<%= asset_path('/Ubuntu/Ubuntu-R-webfont.eot') %>
[1]或者您如何引用图像 .我花了一些时间来围绕这个问题 . 我仍然在
app/assets/fonts
和app/assets/images
中使用了相同名称的文件't know what happens if there' .[1]假设你有一个字体
app/assets/fonts/Ubuntu/Ubuntu-R-webfont.eot
安德鲁,杰森同意了 . FWIW我把它放在我的config / application.rb旁边
通过创建
app/assets/images
和app/assets/fonts
,它们将自动添加到资产路径中 .创建后打开rails控制台并检查:
(
y
是yaml
方法的快捷方式)它可以在不添加路径的情况下工作,但请注意您使用的是资产的有效文件名 .
例如,在这种情况下,请将
?#iefix
留在字体文件名之外我可以确认它的工作原理没有在Rails 3.1.0.rc4中添加配置的新路径(并且假定更高) . 我蹦了我的服务器,你也可以这样做 .
创建
assets/fonts
文件夹并在其上添加一些字体,并在css文件中使用主题,如下所示