Rails 4.1 assets pipeline production,预编译后两个单独的 css 文件中的背景图片路径不同
Rails 4.1 assets pipeline production, background image path different in two seperate css files after precompile
我在生产中有一个 rails 4.1.1 应用程序,因为我有一个来自 gem 'fancybox2-rails'、'0.2.8'[ 的 fancybox.css 文件=17=]
在 application.css 我添加了如下文件。
*= require jquery.ui.datepicker
*= require jquery.ui.slider
*= require fancybox
*= require_tree .
*= require_self
我还在另一个 lockbox.css 文件中添加了如下内容
*= require jquery.ui.datepicker
*= require jquery.ui.slider
*= require fancybox
在 production.rb 中,我添加了额外编译 lockbox.css 文件的配置,如下所示
config.assets.precompile += %w( lockbox.css )
我的生产环境配置为子目录
www.test.com/v1
www.test.com/v2
问题出在 lockbox.css 文件中,application.css 和 lockbox.css
中背景图像的背景 url 路径不同
例如 application.css
路径正确,v1/assets/my_image.png
但在lockbox.css
相同的路径被错误地编译为 v1/my_image.png
请解释为什么会发生这种情况以及如何解决这个问题。
将此配置放入您的 production.rb
config.action_controller.relative_url_root = '/your-sub-uri'
这会将子 uri 添加到第 3 方 gem 资产。
我从 here
得到了这个配置
我在生产中有一个 rails 4.1.1 应用程序,因为我有一个来自 gem 'fancybox2-rails'、'0.2.8'[ 的 fancybox.css 文件=17=]
在 application.css 我添加了如下文件。
*= require jquery.ui.datepicker
*= require jquery.ui.slider
*= require fancybox
*= require_tree .
*= require_self
我还在另一个 lockbox.css 文件中添加了如下内容
*= require jquery.ui.datepicker
*= require jquery.ui.slider
*= require fancybox
在 production.rb 中,我添加了额外编译 lockbox.css 文件的配置,如下所示
config.assets.precompile += %w( lockbox.css )
我的生产环境配置为子目录
www.test.com/v1
www.test.com/v2
问题出在 lockbox.css 文件中,application.css 和 lockbox.css
中背景图像的背景 url 路径不同例如 application.css
路径正确,v1/assets/my_image.png
但在lockbox.css
相同的路径被错误地编译为 v1/my_image.png
请解释为什么会发生这种情况以及如何解决这个问题。
将此配置放入您的 production.rb
config.action_controller.relative_url_root = '/your-sub-uri'
这会将子 uri 添加到第 3 方 gem 资产。
我从 here
得到了这个配置