如何从资产管道获取静态链接

时间:2016-07-06 10:38:38

标签: ruby-on-rails ruby-on-rails-4

我是Rails的新手,仍然卡在获取javascript文件的链接。 我正在使用Bower Rails安装xdLocalStorage,安装完成后,我在xdLocalStorage收到了一个文件夹vendor/assets/bower_component

在我的app/assets/javascript/xdLocalStorage/application.js

//= require xdLocalStorage
//= require_tree .

在我的config/initializers/assets.rb

Rails.application.config.assets.precompile += %w( xdLocalStorage/application.js )

现在,我想获取要在xdLocalStorage中提交的网址。但我不能。我试过如下:

= asset_url 'xdLocalStorage/dist/scripts/xdLocalStorage.min.js'

但它返回404。

有些人问我为什么要得到网址。 xdLocalStorage.min.js不用于我的网站,它将嵌入到另一个网站并通过jquery动态加载。所以我需要获取此文件的URL。

有些人问我为什么不将xdLocalStorage移动到公共文件夹。因为我需要它能够更容易地升级Bower xdLocalStorage

请帮助我获取上述网址。 Rails版本:4

1 个答案:

答案 0 :(得分:0)

没有xdLocalStorage/dist/scripts/xdLocalStorage.min.js因为它没有预编译。如果您需要,请添加到Rails.application.config.assets.precompile,或为其创建单独的清单,并添加到assets.precompile

另外考虑到,该链接会因资产指纹识别而发生变化,因此要提供链接,您可能需要一个控制器操作,该操作将重定向到实际链接。