【发布时间】:2013-03-22 16:49:42
【问题描述】:
我有一个 Rails 3.2.12 应用程序,我正在尝试使用 Amazon S3 存储桶和我的 Heroku 应用程序的 assets_sync gem 同步我的资产。 我查看了整个 github 问题跟踪器和此处的 SO,但无法找到答案。所以这是我的问题:
是否可以使用asset_sync gem 同步.less 文件?
在我推送到 Heroku 之后,我在日志中看到了这个错误:
Running: rake assets:precompile rake aborted! variable @inputHeight is undefined (in /tmp/build_tejom7tf9zq9/app/assets/stylesheets/utils-and-mixins.less)
为了配置我的应用程序,我遵循了来自 asset_sync github page 的 wiki,并设置了我的 ENV 变量,我使用了内置初始化程序。
以下是我的 production.rb 文件中的修改,以符合 assets_sync 要求:
# Precompile additional assets (application.js, application.css, and all non-JS/CSS are already added)
config.assets.precompile += [ '*.css' ]
# Serving Assets From S3 on Heroku
config.action_controller.asset_host = "//s3.amazonaws.com/test"
# store assets in a 'folder' instead of bucket root
config.assets.prefix = "/production/assets"
end
任何建议将不胜感激。谢谢
编辑 1:
我什至尝试在命令行中单独运行:
heroku run rake assets:precompile --app <yourapp>
但它没有帮助,它抛出了同样的错误。
编辑 2:
我猜这就是你要求的:
....
gem 'less-rails', '~> 2.3.2'
gem 'twitter-bootstrap-rails', '2.2.6'
# Gems used only for assets and not required in production environments by default.
group :assets do
gem 'sass-rails', '~> 3.2.3'
gem 'coffee-rails', '~> 3.2.1'
gem 'uglifier', '>= 1.0.3'
gem 'therubyracer', '~> 0.11.4', platforms: :ruby
gem 'asset_sync'
end
【问题讨论】:
-
可以给gem文件吗?
标签: heroku amazon-s3 ruby-on-rails-3.2 less assets