在 asset_pipeline 中包含来自 rails 应用之外的资产
Include assets from outside the rails app in asset_pipeline
我正在扩展现有的代码库,需要在我编写的代码和现有代码之间有明确的界限。我通过使用它得到了 html-files 的工作:
render :file => Rails.root.to_s.split('/')[0...-1].join('/')+'/my-extension/path/to/file/
(第一部分截取了真实的Rails.root,允许我使用和app同级别的文件夹)
现在我需要包含需要预编译的其他文件,例如SASS-CSS。我试图像这样将它们添加到资产管道中:
config.assets.precompile += [Rails.root.to_s.split('/')[0...-1].join('/')+'/my-extension/app/assets/stylesheets/*.css']
或具有特定文件名:
config.assets.precompile += [Rails.root.to_s.split('/')[0...-1].join('/')+'/my-extension/app/assets/stylesheets/overrides.css']
以上两种方法均未成功。我怎样才能做到这一点?
您能否尝试从 Rails 根目录创建一个软 link 到扩展资产目录并将其包含在资产路径中。
$ cd your rails_project
$ ln -s /path/to/extension/assets extension-assets
在配置中
config.assets.paths << Rails.root.join("extension-assets")
我正在扩展现有的代码库,需要在我编写的代码和现有代码之间有明确的界限。我通过使用它得到了 html-files 的工作:
render :file => Rails.root.to_s.split('/')[0...-1].join('/')+'/my-extension/path/to/file/
(第一部分截取了真实的Rails.root,允许我使用和app同级别的文件夹)
现在我需要包含需要预编译的其他文件,例如SASS-CSS。我试图像这样将它们添加到资产管道中:
config.assets.precompile += [Rails.root.to_s.split('/')[0...-1].join('/')+'/my-extension/app/assets/stylesheets/*.css']
或具有特定文件名:
config.assets.precompile += [Rails.root.to_s.split('/')[0...-1].join('/')+'/my-extension/app/assets/stylesheets/overrides.css']
以上两种方法均未成功。我怎样才能做到这一点?
您能否尝试从 Rails 根目录创建一个软 link 到扩展资产目录并将其包含在资产路径中。
$ cd your rails_project
$ ln -s /path/to/extension/assets extension-assets
在配置中
config.assets.paths << Rails.root.join("extension-assets")